如果存在A
列,是否可以选择A
,否则请选择B
列?
表格
A | B
-----|-----
foo | bar
NULL | bar
foo | NULL
结果将是
C
----
foo
bar
foo
似乎在文档中没有支持此功能。
答案 0 :(得分:3)
似乎在文档中没有支持此功能。
当然有。
SELECT COALESCE(A,B) AS C
FROM aTable
SELECT ISNULL(A,B) AS C
FROM aTable
SELECT CASE WHEN A IS NOT NULL THEN A ELSE B END AS C
FROM aTable
请注意,在SQL Server中,查询优化器会将COALESCE()
重写为等同于第三个示例的CASE
表达式。