【发布时间】:2017-04-05 17:16:07
【问题描述】:
数据
col1 col2 col3
5121 w river road
5512 empty pine road
查询 1
Select LTRIM(ISNULL(Col1+' ','')+ ISNULL(col2+' ', '') + ISNULL(col3+' ','') as col4 from ...
查询 2
Select LTRIM(COALESCE(Col1+' ','')+ COALESCE(col2+' ', '') + COALESCE(col3+' ','') as col4 from ...
对于这两个结果我得到这个值
5121 w river road ( this looks good )
5512 pine road ( i get extra space for col 2 )
谢谢
【问题讨论】:
-
empty意思是null或长度为 0 的字符串? -
好的,那么我有空值或空值而不是 0
-
Col1+" " 总是会在空字符串上返回一个空格,因此不为空
-
@ChrisCaviness
NULL + ''是NULL -
再一次,NULLS 或带有
length = 0或''的字符串以及你使用的是什么rdbms?