【发布时间】:2017-08-23 13:55:57
【问题描述】:
这是我的数据
col1 col2 col col3 col4 col5 col6
42 A 11 18 89 16 empty
42 B 12 empty 89 14 C
36 8 9 empty empty 2 empty
这是我正在运行的脚本
select col1 + COALESCE ([col2]+'-','')
+COALESCE([col3]+'-','')+COALESCE([col4]+'-','')
+COALESCE([col5]+'-','')+COALESCE([col6],'') as totalCol
FROM ...
这就是我得到的
totalCol
42A-11-18-89-16-
42B-12- -89-14-C
368-9- - -2 -
这就是我想要的
totalCol
42A-11-18-89-16
42B-12-89-14-C
368-9-2
【问题讨论】:
-
当您在示例数据中写“空”时,您的意思是 NULL 还是“空”字符串
''? -
那么,您不想在
col1和col2之间使用破折号吗?并且您的数据有一个col未在您的查询中使用。因此,您的查询无法创建this is what I get数据...请澄清。 -
是的,第 1 列和第 2 列没有破折号,基本上我将 6 列组合成一列,并且在第一列和第二列旁边有破折号。如果任何一列有空值,我不希望破折号像上面的例子那样显示