从这样一个表中:
id name alias
0 John Null
1 Null Paul
2 Null George
3 Ringo Null
4 Pete Pete
如何选择name
和alias
列之间的第一个非空值,并将其放入自己的results
字段中,以便输出为:
id result
0 John
1 Paul
2 George
3 Ringo
4 Pete
答案 0 :(得分:5)
您基本上是在描述COALESCE
函数:
https://www.postgresql.org/docs/9.6/static/functions-conditional.html
在你的情况下:
SELECT id, COALESCE(name, alias) AS result FROM yourtable;