在查询中替换空值 returns 多个值,其中只有一些值是空值?

Replace null values in a query that returns multiple values where only some of them are null?

有没有办法替换查询中的每个 null 实例?

我正在使用 SQL Server 2008。例如,如果查询 returns 4 个值:

客户姓名:

Bob   
Joe    
Null    
Alice

我可以用 Allen 或任何 varchar/string 替换 Null 吗?

使用COALESCE or ISNULL

SELECT CustomerName = COALESCE(CustomerName, 'Allen')
FROM dbo.TableName

如果 NULL 不是真正的 NULL 而是字符串 'NULL' 你可以使用 NULLIF + COALESCE / ISNULL:

SELECT CustomerName = COALESCE(NULLIF(CustomerName, 'NULL'), 'Allen')
FROM dbo.TableName
Coalesce(CustomerName, 'Allen')