请教一个sql查询需求

有一张任务进度表,对应某个用户的某个任务(task)是否完成
task只有123,而且表里如果存在某个用户,则一定存在他的三条任务记录。
现在要查询三个任务都完成的人数,怎么查询效率最高?

iduser_idtaskstatus
1110
2121
3130
4211
5221
6231
7310
8321
9331
阅读 1.9k
2 个回答

select user_id from test where status=1 group by user_id having count(*)=3

select
    sum(status)
from
    table
group by
    user_id
having
    sum(status) = 3
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题