2

如果 Column1 为空或 NULL,SQL Server 中是否有任何方法或函数来选择 Column2?

SELECT IsEmpty(Column1,Column2) FROM Table
4

2 回答 2

2
SELECT CASE WHEN Column1 <> '' THEN Column1 ELSE Column2 END  

Column1 <> ''也不评估到true什么时候NULL

或者

SELECT COALESCE(NULLIF(Column1,''),Column2)
于 2012-11-09T11:33:19.493 回答
0
SELECT CASE WHEN ISNULL(Column1,'')='' THEN Column2 ELSE Column1 END FROM Table

ISNULL(Column1,Column2)Column2如果Column1is将返回NULL。如果Column1是一个空字符串,它将返回Column1. 这就是为什么您必须使用上面的 case 语句对其进行测试的原因。

于 2012-11-09T11:31:13.433 回答