对列进行分组并忽略空值的SQL查询
我有一张像这样的桌子:对列进行分组并忽略空值的SQL查询,sql,oracle10g,Sql,Oracle10g,我有一张像这样的桌子: Col1 Col2 Col3 Col4 1 a 1 b 1 c 2 e 2 f 2 g 我需要写一个查询,它的输出如下 Col1 Col2 Col3 Col4 1 a b c 2 e f g 我使用的是oracle 10g如果每列只有一个值,则可以使用聚合函数: select col
Col1 Col2 Col3 Col4
1 a
1 b
1 c
2 e
2 f
2 g
我需要写一个查询,它的输出如下
Col1 Col2 Col3 Col4
1 a b c
2 e f g
我使用的是oracle 10g如果每列只有一个值,则可以使用聚合函数:
select
col1,
max(col2) col2,
max(col3) col3,
max(col4) col4
from yourtable
group by col1
看
结果是:
| COL1 | COL2 | COL3 | COL4 |
-----------------------------
| 1 | b | a | c |
| 2 | e | f | g |
如果Col2中有多个条目用于Col1中的相同值,会发生什么情况?我尝试按Col1分组,但无法使用它,因为我需要显示所有columns@MarkCol2中只有一个条目对应于中的相同值Col1@Prash让我们看看你的code@Mark你为什么需要查看此代码?@Prash不客气。如果您觉得此答案或其他任何问题的答案有帮助,请务必通过答案左侧的复选标记接受。它可以帮助网站的未来访问者知道所选的答案,并让您获得代表接受。有关更多详细信息,请参阅: