【发布时间】:2017-04-09 03:04:44
【问题描述】:
我有两个表:ToDoList 和 ToDotasks
我需要编写一个查询,它将返回 ToDoList 列以及未完成任务的计数,即 ToDotasks 表的 taskstatus=0
我的查询:
SELECT *,(select count(*) from todotasks where taskstatus = 0 group by
listid) as TotalIncomplete FROM dbo.ToDoList
错误:子查询返回超过 1 个值。当子查询跟随 =、!=、、>= 或子查询用作表达式时,这是不允许的。
待办事项:
ListID ListName
1 List 5600
2 List 22
3 List 30
4 List 4
5 List 1
待办事项
taskid ListID taskStatus
3 2 0
6 3 0
14 3 0
16 3 0
19 4 1
36 1 0
38 1 1
39 1 0
40 2 0
41 2 0
我追求的是什么:
ListID ListName TotalIncomplete
1 List 5600 2
2 List 22 3
3 List 30 3
4 List 4 0
5 List 1 0
【问题讨论】:
-
您的查询有什么问题? IOW,你问的是什么?
-
你有SELECT **,应该是SELECT *
-
是的,由于某种原因,stackoverflow 隐藏了一个 *...所以我添加了 2
-
我需要第三列,它是根据不完整的任务计数计算出来的
-
1 List 5600 3最后第 3 列怎么样,不应该是 1 还是 2?
标签: mysql sql sql-server