SQL问题,谁能帮帮忙

来源:百度知道 编辑:UC知道 时间:2024/05/10 13:13:40
为什么我这样做是错的select sno from grade where count(sno)>2
而他这样做就对呢?select sno from grade having count(sno)>2 group by sno

having和group by要用在什么情况

group by的作用是在分组中筛选符合条件的组,
having 子句中指定的搜索条件只是那些必须在执行分组操作之后才能应用的搜索条件,可以包含聚合函数,

两都通常同时使用。

select sno from grade having count(sno)>2 group by sno 等于
select sno from (select sno,count(sno) from grade group by sno)

至于你的,count之后sno的记录无法排列,所以要分组