这是SQL今日一题的第12篇文章
今天有两道题目,因为很相似所以放在一起说。
题目描述1
从titles表获取按照title进行分组,每组个数大于等于2,给出title以及对应的数目t。
用到titles表,这个表是一个新表,之前的题目没有遇到过,插入如下数据:

方法
select title,COUNT(title) as t from titles
group by title
having COUNT(title) >=2
题目再解读:要按照title字段分组并计数,结果要筛选出组数大于等于2的,输出title和分组数t,非常简单的分组后再筛选的问题
1、group by按照title分组
2、对title计数,命名为t,从titles表里取出title和t字段
3、分组后筛选,用having进行过滤,选择t大于等于2的记录

题目描述2
从titles表获取按照title进行分组,每组个数大于等于2,给出title以及对应的数目t。(注意对于重复的emp_no进行忽略(即emp_no重复的title不计算,title对应的数目t不增加)。
方法
select title,COUNT(distinct emp_no) as t from titles
group by title
h

本文介绍了两道SQL题目,涉及根据title分组并计数,要求筛选出组数大于等于2的记录。文章详细讲解了如何使用GROUP BY和HAVING子句,以及在存在重复emp_no时如何正确计数。同时,强调了HAVING和WHERE子句在过滤条件上的区别,并提到了COUNT(DISTINCT column)在去重计数中的应用。
最低0.47元/天 解锁文章
1897

被折叠的 条评论
为什么被折叠?



