【发布时间】:2019-07-11 01:31:45
【问题描述】:
我正在尝试将逗号分隔的数据拆分为单独的列(使用 SQL Server 2008)。我在这里看到过类似的问题,但就我而言,每一行中包含的数据都是逗号分隔和回车分隔的。
示例:
日期内容 ---- -------- 1/1/2019 1,约翰,能源部 2,简,多伊 2019 年 1 月 2 日 1,约翰,能源部 2、简·多伊 3、玛丽·史密斯使用自定义拆分函数,我能够只返回一条记录的值:
SELECT * FROM Split_CTE((SELECT TOP 1 content FROM myTable), CHAR(10))
结果:
1,约翰,多伊 2,简,多伊使用子字符串函数,我能够只返回每条记录的第一行:
SELECT dateRetrieved, SUBSTRING(content, 1, CHARINDEX(CHAR(10), content)-1) as Row FROM myTable
结果:
2019 年 1 月 1 日 1,约翰,多伊 2019 年 1 月 2 日 1,约翰,多伊但我想要找回的是:
日期行第一最后 2019 年 1 月 1 日 1 约翰·多伊 2019 年 1 月 1 日 2 简·多伊 2019 年 1 月 2 日 1 约翰·多伊 2019 年 1 月 2 日 2 简·多伊 2019 年 1 月 2 日 3 玛丽·史密斯有什么建议吗?
【问题讨论】:
标签: sql-server csv sql-server-2008 delimited