如何通过忽略sql中的空值来合并两行或更多行

时间:2016-04-04 11:19:36

标签: sql oracle

我有一张类似

的表格
col1  Col2  col3

NAME  123   Null

NAME  Null  243

我想将它们显示在一行中。

col1      Col2      col3

NAME      123       243

我不能用C和D做一组,因为它们不是唯一的。

在Oracle sql中还有另一种方法吗?

2 个答案:

答案 0 :(得分:2)

试试这个

SELECT COL1,MAX(COL2),MAX(COL3)
FROM TableName
Group By COL1

答案 1 :(得分:1)

此查询:

SELECT MAX(col1), MAX(Col2), MAX(col3)
FROM mytable

将返回单个行,其中包含每个字段的非空值。如果有多个非空值,则将选择最大值。