你能结合CASE和REPLACE语句吗?
我有这个语句将NULL显示为空白:
CASE
WHEN f.descriptionofwork IS NULL
THEN
''
ELSE
f.descriptionofwork
END as 'Description'
但是我还需要删除数据中的换行符/返回值,并且通常会使用以下语句:
Replace(Replace(f.descriptionofwork,CHAR(10),''),CHAR(13),'') as 'Description'
我如何将两者合并?
答案 0 :(得分:1)
试试这个:
CASE
WHEN f.descriptionofwork IS NULL THEN ''
ELSE Replace(Replace(f.descriptionofwork,CHAR(10),''),CHAR(13),'')
END as 'Description'
答案 1 :(得分:0)
COALESCE()
比CASE
更简洁:
SELECT COALESCE(Replace(Replace(f.descriptionofwork, CHAR(10), ''
), CHAR(13), ''
), '') as Description
您不应将列别名放在单引号中。为了避免代码中的问题,只使用单引号作为字符串和日期常量。