我正在对表进行查询,以获取共享多条信息的多行,并将它们组成一行。这些行之间的唯一区别是几个columuns Y
或N
。我希望Y
覆盖那些有N
的人有Y
,如果没有N
,那么应该看到col 1 col 2 col 3 col 4
AZ99ZB102 8 Y N
AZ99ZB102 8 Y Y
AZ99ZB201 4 N N
AZ99ZB201 4 Y N
。
我当前表的一个例子
col 1 col 2 col 3 col 4
AZ99ZB102 8 Y Y
AZ99ZB201 4 Y N
预期结果:
{{1}}
对此的任何帮助将不胜感激。
答案 0 :(得分:0)
您可以使用基本聚合执行此操作:
select col1, col2, max(col3) as col3, max(col4) as col4
from table
group by col1, col2;
我冒昧地将列重命名为“col”而不是“row”。后者似乎完全令人困惑。