【发布时间】:2011-11-22 10:27:29
【问题描述】:
我对此有困难。在我放入第一个内部联接之前,此查询在计算总和时运行良好。在表 tbl_companies 中,每个公司有多个条目,例如,该表可能如下所示:
priority company externalip
1 bla 9.9.9.9
1 bla 3.3.3.3
1 company2 3.56.6.6
在下面的查询中,总和(计算 As TotalWithoutNew 和 TotalAllId 当公司有多个条目时加倍,如果有三个条目则增加三倍等。我想要它做的只是从表 tbl_companies
SELECT b.company,
b.priority,
i.concom,
Coalesce (SUM(CASE
WHEN c.category_id = '30' THEN 0
ELSE t.logmins
END), 0) AS totalwithoutnew,
Coalesce (SUM(t.logmins), 0) AS totalallid
FROM helpdesk3.dbo.inquiry AS i
INNER JOIN [Check].[dbo].[tbl_companies] AS b
ON i.concom = b.company COLLATE sql_latin1_general_cp1_ci_as
INNER JOIN timelog AS t
ON t.inquiry_id = i.inquiry_id
INNER JOIN prod AS p
ON i.prod_id = p.prod_id
INNER JOIN category AS c
ON p.category_id = c.category_id
WHERE ( Datepart(yyyy, escdate) = 2011 )
GROUP BY i.concom,
b.company,
b.priority
ORDER BY totalwithoutnew DESC,
b.priority DESC
【问题讨论】:
-
priority、company 和 externalip(一起)是否唯一标识 tbl_companies 记录?
标签: sql sql-server sql-server-2008 tsql