我有一个View Table,我有一个像这样写的查询
SELECT landNo, planNo, blockNo, parcelNo, RTRIM(LTRIM(STR(parcelNo))) AS parcelNoString,
parcelAREA, '[ ' + blockNo + ' ]' + ' - ' + RTRIM(LTRIM(STR(parcelNo))) + ' - ' +
RTRIM(LTRIM(STR(parcelAREA))) AS DisplayName
FROM PARCELS
所以显示名称显示为[blockNo] - parcelNo - parcelArea
现在我必须检查一下,如果blockNo IS NULL
然后DisplayName
必须是
[] - parcelNo - parcelArea
有人可以帮助这方面。
答案 0 :(得分:2)
尝试
'[' + COALESCE(blockNo, '') + ']'
coalesce返回第一个非null参数,因此如果blockNo为null,它将返回一个空字符串(''
)。
答案 1 :(得分:0)
如果blockNo是一个字符串,则为plain;
'[' + ISNULL(blockNo, '') + ']'
如果blockNo是数字类型,首先将其强制转换为字符串,否则它将返回[0]
;
'[' + ISNULL(CAST(blockNo AS NVARCHAR), '') + ']'