我目前的查询:
SELECT dbo.INQUIRY.*, dbo.LINKS.*, dbo.TIMELOG.LOGMINS
FROM dbo.INQUIRY
INNER JOIN dbo.LINKS ON dbo.INQUIRY.INQUIRY_ID = dbo.LINKS.INQUIRY_ID
INNER JOIN dbo.TIMELOG ON dbo.INQUIRY.INQUIRY_ID = dbo.TIMELOG.INQUIRY_ID
这种关系是对许多时间日志的许多链接的一次查询。目前它将返回6行,INQUIRY_ID为71293,其中LOGMINS为行1,5行2,12,行3等。
我想要做的是将那个INQUIRYID的所有LOGMIN加起来并将其作为行的结果返回,这样我就不会得到6行,只有一行有总行。任何方向赞赏!
答案 0 :(得分:1)
您需要在group by
或聚合函数中选择所有字段。
这是基本的想法。
SELECT i.INQUIRY_ID (, other fields not aggregated)
,SUM(t.Logmins) [TotalLogMins]
FROM INQUIRY i
INNER JOIN LINKS l
ON i.INQUIRY_ID = l.INQUIRY_ID
INNER JOIN TIMELOG t
ON i.INQUIRY_ID = t.INQUIRY_ID
GROUP BY i.INQUIRY_ID (, other fields not aggregated)