0
我在SQL Server 2016年的工作,我有以下表和样本数据:SQL查询,以确定是否行组在特定的列具有特定值
CREATE TABLE A
(
col1 char(1)
,col2 int
,indicator_flag char(4)
)
;
INSERT INTO A
VALUES
('A', 1, 'Pass')
,('A', 2, 'Pass')
,('A', 3, 'Fail')
,('B', 10, 'Pass')
,('C', 19, 'Fail')
,('D', 1, 'Fail')
,('D', 2, 'Fail')
,('E', 1, 'Pass')
,('E', 2, 'Pass')
,('F', 20, 'Fail')
,('F', 21, 'Fail')
,('F', 100, 'Pass')
;
的indicator_flag
列仅会举行值'通过'和'失败'。对于col1
中的每个不同的值,我想根据以下规则返回折叠的indicator_flag
值 - 如果所有值均为“通过”,则为“通过”。否则,'失败'。
所以,对于样本数据,我期待下面的输出:
col1 collapsed_indicator_flag
A Fail
B Pass
C Fail
D Fail
E Pass
F Fail
我怎样才能做到这一点的输出?解决方案需要表现良好。 (我的实际表是非常大的。)