为什么当col1包含空值时返回.
?连接NULL返回T-SQL中的值(CONCAT函数)
CONCAT(NULLIF([COL1],''),'.')
我有3列,我需要与之间有时列包含一个空白值的.
来连接。在这种情况下,尾部.
不应连接在一起。我使用哪些功能?
col1 col2 col3
A 1 x
B 2
预计业绩:
A.1.X
B.2
测试代码:
DECLARE @tbl TABLE(a varchar(100),b varchar(100),c varchar(100))
INSERT INTO @tbl
SELECT 'A','1','X' UNION
SELECT 'B','2','' UNION
SELECT 'C','','' UNION
SELECT '','1','X' UNION
SELECT 'B','','' UNION
SELECT 'C','',''
SELECT CONCAT (Nullif(a,''),'.' + nullif(b,''), '.' + nullif(c,'')) AS Contact_Result FROM @tbl;
你的意思'[COL1]'包含一个空字符串或'NULL'? – Skrrp
如果中间或第一列为空,它会是什么样子? – SQLChao
同样的事情了。不应该出现 – user1721546