按照年龄进行分组统计各个年龄段的人数:
select FAge,count(*) from T_Employee
group by FAge
group by 子句必须放到where语句的之后
没有出现在group by子句中的列是不能放到 select语句后的列名列表中的(聚合函数中除外)
错误: select FAge, FSalary from T_Employee
group by FAge
正确: select FAge,avg(FSalary) from T_Employee
group by FAge
Having 语句
在Where中不能使用聚合函数,必须使用 having ,having要位于 group by之后,
Select FAge,conut(*) as 人数 from T_Employee
group by FAge
Having conut(*)>1
注意:having 中不能使用末参数分组的列,having 不能替代where。作用不一样, Having 是对组进行过滤
限制结果集行数
select top 5 * from T_Employee order by FSalary desc
(*) 检索按照工资从高到低排序检索从第六名开始一共三个人的信息:
select top 3 * from T
|