添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接



众所周知,group by 一个字段是根据这个字段进行分组,那么group by 多个字段的结果是什么呢?由前面的结论类比可以得到,group by 后跟多个子段就是根据多个字段进行分组

比如有一个学生选课表,表结构如下:

Table: Subject_Selection


Subject

Semester

Attendee

ITB001

1

John

ITB001

1

Bob

ITB001

1

Mickey

ITB001

2

Jenny

ITB001

2

James

MKB114

1

John

MKB114

1

Erica


  1. 我们想统计每门课程有多少个学生报名,应用如下SQL:
    SELECT Subject, Count(*) FROM Subject_Selection GROUP BY Subject
    得到如下结果:

Subject

Count

TB001

5



KB114

2



  1. 因为表里记录了有5个学生选择ITB001,2个学生选择了MKB114。
  2. 那么GROUP BY X, Y呢?
    GROUP BY X, Y意思是将所有具有相同X字段值和Y字段值的记录放到一个分组里。
    例:要求统计出每门学科每个学期有多少人选择,应用如下SQL:
    SELECT Subject, Semester, Count(*) FROM Subject_Selection GROUP BY Subject, Semester

上面SQL的意思是,对Subject_Selection表中的数据进行分组,将具有相同Subject和Semester字段值的记录放到同一个分组里去, 然后对每个分组中的数据应用聚合函数(COUNT,SUM, AVG,etc)。

得到的结果是:

| Subject| Semester | Count |
| :------: | :------: | :------: |
| ITB001 | 1 | 3 |
|ITB001 | 2 | 2 |
|MKB114 | 1 | 2 |

从表中的记录我们可以看出这个分组结果是正确的有3个学生在第一学期选择了ITB001, 2个学生在第二学期选择了ITB001,


还有两个学生在第一学期选择了MKB114, 没人在第二学期选择MKB114。

  1. 再比如有一个订单表,表中记录了所有支付过的订单
    Table: Order

Product

Buyer

Spending

D001

Todd

12.00




D001

Todd

12.00




D001

Todd

12.00




D001

Lily

12.00




D001

Lily

12.00




D002

Todd

20.00




D002

Todd

20.00




  1. 现在我们想统计每个用户在每种商品上总共花了多少钱,执行如下SQL
    SELECT Product,Buyer, SUM(Spending) FROM `Order` GROUP BY Product, Buyer
    获得的结果如下:

Product

Buyer

SUM

D001

Todd

36.00




D001

Lily

24.00




D002

Todd

40.00




//判断浮点数(double和float) private boolean isDouble(String str) { if (null == str || "".equals(str)) { return false; Pattern pattern = Pattern.compile("^[-\\+]?[.\\d]*$

python 将 1e-05 装为 0.00001小数点 python将小数转化为整数

在编程中,经常使用数字来记录游戏得分、表示可视化数据、存储Web应用信息等。Python根据数字的用法以不同的方式处理它们。鉴于整数使用起来最简单,下面就先来看看 Python是如何管理它们的。1. 整数在Python中,可对整数执行加(+ )减(- )乘(* )除(/ )运算。 print(4+3) print(5-2) print(3*4) print(5/2)