麻烦高手看下下面这个sql语句,为什么groupby了后,还能接个having 呢?
发布网友
发布时间:2022-05-12 10:15
我来回答
共3个回答
热心网友
时间:2023-10-25 05:21
如ls所说,having子句是用用来筛选分组后的条件的语句
where中不允许使用聚合函数,有时需要对分组后的结果再进行一些筛选
比如常见的筛选重复记录,以group by分组后,只想得到分组后数量大于1的,也就是有重复的数据,这时就可以用having count(*)>1
你的语句是筛选出B表中语文成绩低于A表,人数在54个以下来自:求助得到的回答
热心网友
时间:2023-10-25 05:21
HAVING就是专门用于GROUP BY分组后的条件判断,相当于WHERE.
在这句的意思是先根据表A的班级和语文进行分组,然后在每组中找出B.语文<=54的。追问根据表A的班级和语文进行分组了,怎么个排列法?比如合在一起的b.语文,他会随着a.班级,a.语文,怎么个分组法?
热心网友
时间:2023-10-25 05:22
group by后面的having 是可有可无的,但是一定要记住,having只能和group by匹配,表示的意思是在这个条件里面进行分组追问我晕,但是分组后的的数据里没有b.语文啊