【发布时间】:2021-01-04 19:29:08
【问题描述】:
我正在尝试从 SQL Server 2016 平板电脑中的 varchar 列中提取单个日期,这些日期以逗号分隔,但不知道如何继续。数据设置如下:
article Consolidation_Order_Cut_Off_Final_Allocation
------------------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
011040 01/13/2021,03/10/2021
019099 01/13/2021,01/27/2021,02/24/2021,03/24/2021,04/28/2021,05/26/2021,06/23/2021,07/28/2021
019310 01/27/2021,02/03/2021,03/10/2021,04/14/2021,05/12/2021,06/09/2021,07/14/2021,08/11/2021
059611 01/13/2021
理想情况下 - 我会将每个日期拆分为一个新行。我见过一些类似的问题,它们使用了非常复杂的函数,但似乎是针对 SQL Server 2008 的。我还发现了新函数 STRING_SPLIT,但这似乎是表值,因此必须在 FROM .我的一个想法是声明一个变量来保存此列,然后使用select * FROM string_split(@dates,','); 之类的东西,但是因为该列表中有多个值返回错误。我对 2016 版 SQL Server 非常陌生,想知道是否有人遇到了解决此问题的方法。
【问题讨论】:
标签: sql-server string split