【发布时间】:2017-11-03 11:25:36
【问题描述】:
我有一个像下面这样的管道内衬字符串:
'1|Content|2017-02-11|Guest|Gold|||||1903'
我想将字符串值拆分为行。我通过网上冲浪找到了很多建议。大多数人建议使用函数dbo.Split。
当我尝试使用该函数拆分字符串时:
SELECT ROW_NUMBER() OVER(ORDER BY(SELECT NULL))RN, Items
FROM dbo.Split('1|Content|2017-02-11|Guest|Gold|||||1903','|')
结果如下:
RN Items
1 1
2 Content
3 2017-02-11
4 Guest
5 Gold
6 1903
它会跳过所有空值,只给出包含行的值。但在我的情况下,如果有任何值为空的值,那么我希望它如下所示:
RN Items
1 1
2 Content
3 2017-02-11
4 Guest
5 Gold
6
7
8
9
10 1903
这意味着,我希望空的 vales 为 ' '。我试过了,我不能得到它。请帮我得到这个。谢谢。
【问题讨论】:
标签: sql sql-server string split pipeline