【发布时间】:2015-12-30 09:59:10
【问题描述】:
我有以下查询:
SELECT pics.e_firedate FROM et_pics
结果:
NULL
2014-12-01 00:00:00.000
2015-04-03 00:00:00.000
NULL
NULL
我想将 NULL 值替换为 ''。
CASE
WHEN pics.e_firedate IS NULL THEN ''
ELSE pics.e_firedate
END
使NULL 转换为1900-01-01 00:00:00.000,我尝试将其转换和替换也没有成功。
我怎样才能实现我的目标?
【问题讨论】:
-
SELECT ISNULL(pics.e_firedate,'') FROM et_pics -
所有 case 表达式的返回类型必须相同。
-
您希望结果列是 varchar 还是 datetime?为什么它需要是一个空字符串而不是 NULL?您的列是 DATETIME 而不是 varchar,因此零长度字符串将被转换为您看到的日期。
-
@tinka 这使语句更短,但结果相同。
标签: sql sql-server tsql sql-server-2005