每门学科最低的分数和人html
SELECT * FROM stu WHERE (stu.`score`,stu.`course`) IN ( SELECT MIN(score),course FROM stu GROUP BY course )
分组前的筛选 原始表 筛选条件位于group by子句以前 where关键字 不能在where 后使用组函数
分组后的筛选 分组后的结果 筛选条件位于group by子句以后 having关键字函数
经常使用的组函数:spa
求平均值code |
|
统计行的数量blog |
|
求最大值get |
|
求最小值 |
|
求累加和 |
若是统计的列中只有NULL值,那么MAX和MIN就返回NULL
默认状况下,组函数忽略列值为null的行,不参与计算
2)组函数不容许嵌套,例如:count(max(…));
3)组函数的参数能够是列或是函数表达式;
4)一个SELECT子句中可出现多个汇集函数。
注意:要想列值为NULL的行也参与组函数的计算,必须使用IFNULL函数对NULL值作转换。
SELECT select_expr [, select_expr ...] [FROM table_references [PARTITION partition_list] [WHERE where_condition] [GROUP BY {col_name | expr | position} [ASC | DESC], ... [WITH ROLLUP]] [HAVING where_condition] [ORDER BY {col_name | expr | position} [ASC | DESC], ...] [LIMIT {[offset,] row_count | row_count OFFSET offset}]
1)HAVING能够单独使用而不和GROUP BY配合,若是只有HAVING子句而没有GROUP BY,表中全部的行分为一组
2)HAVING子句中能够使用组函数
3)HAVING子句中的列,要么出如今一个组函数中,要么出如今GROUP BY子句中(不然出错)