【发布时间】:2017-08-25 05:05:20
【问题描述】:
我在下面有一张桌子
Program FileCount
B1 1
A1;B2 2
A2;B3 1
A3;C1;B4 1
A3;C2;D1;B5;B6 3
C3;D2;B7 1
B8;B9 2
B8;B9 2
我只对程序B感兴趣,我想参加所有程序B
Program FileCount
B1 1
B2 2
B3 1
B4 1
B5 3
B6 3
B7 1
B8 4
B9 4
请注意:
- 我使用的是 Microsoft SQL Server 2012
- 程序 B 的名称不统一,只有 2 位数字,但有所不同(例如,B1233456、B123)
我使用了下面的语法,但它没有提供我需要的东西。
SELECT
distinct CASE WHEN PATINDEX('%B%', Program)>0 THEN SUBSTRING(Program, PATINDEX('%B%', Program), 50) ELSE '' END as Program,
sum(cast (Filecount as integer)) as FileCount
FROM dbo.Database1
where Program like '%B%'
group by Program
非常感谢你们的帮助。
亲切的问候,
阿迪
【问题讨论】:
-
它不是重复的,因为这对文件计数的累积值有更复杂的问题。
标签: sql sql-server delimited