我有一张和附图中那张相似的table。id-2列中的id在“星期几”列中有1-7个星期数,例如id-2=100。然而,有时并没有一周中的7天。例如,在id-2=500中,缺少星期几数字3、4和6。在我的sql查询中,我想选择distinct id,但前提是它包含所有1-7天的周数。我想知道是否有人能在这方面指导我?在sql中可以使用什么概念,即case、partition、self join等?
dddzy1tm1#
你可以用 group by 以及 having . 他妈的 day_of_week 总是介于 1 以及 7 :
group by
having
day_of_week
1
7
select id_2 from mytable group by id_2 having count(distinct day_of_week) = 7
如果没有重复 (id2, day_of_week) 元组,然后 having 条款可以更有效地表述为:
(id2, day_of_week)
having count(*) = 7
1条答案
按热度按时间dddzy1tm1#
你可以用
group by
以及having
. 他妈的day_of_week
总是介于1
以及7
:如果没有重复
(id2, day_of_week)
元组,然后having
条款可以更有效地表述为: