Sql 用sum和groupby连接
我有两张桌子。他们的关系是1:N 任务-Id -名字 报告-Id -时间 -TaskId-FK 我想创建一个查询,它将按任务对报告时间求和 我试过这个,但不起作用Sql 用sum和groupby连接,sql,oracle,join,group-by,Sql,Oracle,Join,Group By,我有两张桌子。他们的关系是1:N 任务-Id -名字 报告-Id -时间 -TaskId-FK 我想创建一个查询,它将按任务对报告时间求和 我试过这个,但不起作用 SELECT NAME,SUM (TIME) FROM TASKS LEFT JOIN REPORT ON TASKS.ID = REPORT.TASKID GROUP BY TASKS.NAME 它的Oracle和此查询的时间列在结果中为空 什么是R
SELECT NAME,SUM (TIME) FROM TASKS LEFT JOIN REPORT ON TASKS.ID = REPORT.TASKID
GROUP BY TASKS.NAME
它的Oracle和此查询的时间列在结果中为空 什么是RDBMS?时间的数据类型是什么?如果SQL Server和
time
可能会出现错误“操作数数据类型time对于sum运算符无效”。分组函数不是忽略null而不是返回null吗?我遗漏了什么?@boisvert如果它只是isnull(总和(时间),0)
,可能会更清楚。但是,我怀疑在性能上会有明显的差异。
SELECT
NAME,
SUM( ISNULL(TIME, 0) ) SumOfTime /* Time could be NULL! */
FROM
TASKS
LEFT JOIN REPORT ON TASKS.ID = REPORT.TASKID
GROUP BY
TASKS.NAME