我有一些停机时间,我正在花钱尝试学习SQL。我遇到了一个我希望你可以帮助我的问题。
假设我有一个非常简单的表格,每个日期都有一个唯一的ID(再次,这是一个学习练习 - 否则我会使用实际日期而不是ID),然后是家务那天我做了:
day_id | chore
123456 | Washed the dishes
823454 | Cut the grass
123456 | Washed the dishes
123456 | Took out the trash
324234 | Washed the dishes
正如你所看到的,你有可能在同一天做两次相同的家务活(在这种情况下,我在123456上洗了两次菜。)
我如何计算洗过餐具的唯一天数(在这种情况下,答案应为2)?
答案 0 :(得分:3)
SELECT COUNT(DISTINCT day_id)
FROM Chores
WHERE Chore='Washed the dishes'
答案 1 :(得分:2)
select count(distinct day_id)
from your_table
where chore = 'Washed the dishes'
答案 2 :(得分:2)
SELECT CHORE, COUNT(DISTINCT day_id) cnt
FROM CHORES
WHERE CHORE='Washed the dishes' -- remove this to get list of all chores/count
GROUP BY CHORE