连接行而不丢失列数据

时间:2019-12-04 06:46:40

标签: sql

我有一个看起来像这样的数据集:

ID  Bool1  Bool2  Bool3
A     0      0      1
A     1      0      0
A     0      1      0
A     0      0      1
B     1      0      0
B     0      1      0

我想将其转换为

ID  Bool1  Bool2  Bool3
A     1      1      1
B     1      1      0

意味着只有一个唯一ID ,并且每个唯一ID 都将收到它给出的所有“ 1”值。

有什么想法吗?

1 个答案:

答案 0 :(得分:6)

使用max()聚合和group by

select id, max(bool1) as bool1, max(bool2) as bool2,max(bool3) as bool3
from tablename
group by id