【发布时间】:2017-10-10 13:01:51
【问题描述】:
我似乎不知道如何为我的特定问题设置逻辑。我正在尝试计算“服务”一词出现的次数,但仅在 RECORD_CODE 为 INCIDENT 时才出现。当 RECORD 是 INCIDENT-UPDATE 时,它通常已经作为 INCIDENT 存在于其他地方,因此我将它们排除在外,以免重复我的数据。
但是,在少数情况下,SUBMIT_METHOD 是“WEB”并且唯一的记录是 INCIDENT_UPDATE,我无法弄清楚如何只查看 RECORD = 'INCIDENT' 的位置,除非特定记录的 SUBMIT_METHOD 为“WEB”,并且该报告 # 没有记录,记录为 INCIDENT。这可能是一个简单的问题,我只是想多了,但我想不出该怎么做。任何帮助将不胜感激!
我的查询:
SELECT column2, count(*) as 'COUNT'
from Service.Table
where date between '1/1/17' and '1/31/17'
and column1 = 'Issue'
and RECORD = 'INCIDENT'
group by column2
数据样本:
REPORT # RECORD SUBMIT_METHOD SUBMIT_DATE COLUMN2
1234 Incident Web 1/1/2017 Service
1234 Incident-Update Web 1/1/2017 Service
1235 Incident Phone 1/15/2017 Other
1235 Incident-Update Phone 1/15/2017 Other
1236 Incident-Update Web 1/18/2017 Service
这种情况下的预期输出是:
COLUMN2 COUNT
Service 3
如果我可以提供任何其他信息,请告诉我!
【问题讨论】:
标签: sql sql-server sql-server-2008 conditional