SQL查询,它为我的最后一列提供了一个值

时间:2015-04-09 12:02:17

标签: sql sql-server

所以,让我说我有一个包含6列col1-col6

的表

有时候我会在所有6列中都有值,有时可能只有3或5,这取决于。其他列将为null。

在我的查询中,我希望从col1中选择一个,并选择值为的最后一列。这是因为此列保留了所需的总数。

如果要修复总数,例如col6,我可以轻松查询并说出

SELECT col1,col6 from mytable

但问题是我必须在列中找到总数。它可以在任何col2-col6中。

请看我的小提琴以便更好地理解,在小提琴的例子中我想要col1,col5回来。

http://sqlfiddle.com/#!6/e3aeb/2

1 个答案:

答案 0 :(得分:5)

使用COALESCE选择“最后”非空列。

select col1, coalesce(col6, col5, col4, col3, col2) from mytable