【发布时间】:2020-10-06 09:23:58
【问题描述】:
我被分配从两个表中获取所需格式的数据。
桌员:
StaffID | Staff Name
--------+-----------
1 | John
2 | Jack
和TableLead
LeadID | LeadValue | LeadStaus | StaffID
-------+-----------+-----------+--------
1 | 5000 | New | 1
2 | 8000 | Qualified | 1
3 | 3000 | New | 2
您会注意到StaffID 是一个引用TableStaff 的外键。
我必须用以下格式表示数据
StaffID | StaffName | NewLeadCount | QualifiedLeadCount
--------+-----------+--------------+-------------------
1 | John | 1 | 1
2 | Jack | 1 | 0
到目前为止我尝试过的是:
SELECT
COUNT([LeadID ]) AS LdCount, 'New' AS StageName
FROM
[dbo].[TableLead]
WHERE
[LeadStaus] = 'New'
UNION
SELECT
COUNT([LeadID ]) AS LdCount, 'Qualified' AS StageName
FROM
[dbo].[TableLead]
WHERE
[LeadStaus] = 'Qualified '
任何 NULL 点都应替换为 0。谁能告诉我解决问题的正确方向?
【问题讨论】:
-
如果您不想使用(限制性的)
PIVOT运算符,请改用条件聚合。 -
您能否就上述问题提示我如何使用它?
-
搜索“条件聚合”或“跨标签”;你会发现很多资源(包括在这个网站上)。 不要忘记在搜索词中也包含“SQL Server”。
标签: sql-server join pivot-table