查询语句拓展
limit的使用(mysql中的limit类似于sqlserver中的top)
用例表Student
第一种:SELECT * FROM table LIMIT [offset,] rows
有两个参数,第一个偏移量,从0开始的,第二个参数表示行数。
select * from Student order by Stu_num asc limit 1,2
结果应该是红色框起来的部分
第二种:SELECT * FROM table LIMIT rows OFFSET offset
select * from Student order by Stu_num asc limit 2 offset 1
group by和聚合函数
1.在使用 GROUP BY 子句时,Select列表中的所有列必须是聚合列(SUM,MIN/MAX,AVG等)或是GROUP BY 子句中包括的列。同样,如果在SELECT 列表中使用聚合列,SELECT列表必须只包括聚合列,否则必须有一个GROUP BY 子句。
2.聚合函数。聚合函数用于GROUP BY 字句,用于聚合分组的数据。聚合函数在和GROUP BY子句一起使用时显示出其强大的功能。但聚合函数的使用不限于分组查询;如果查询语句中使用了聚合函数,而没使用GROUP BY子句,则聚合函数是用于聚合整个结果集(匹配WHERE子句的所有行)。当不使用GROUP BY 子句时,在SELECT列表中某些聚合函数只能与其他的聚合函数一起使用,即聚合函数必须使用GROUP BY 子句才能在SELECT列表中与列明配对。例如,不使用GROUP BY子句,SELECT列表中AVG只能和SUM对应,但不能对应特定列。
注意: 在实际应用中,聚合函数常和分组函数group by结合使用
常用的聚合函数