这是我的表结构:
id PaymentCond
1 ZBE1, AP1, LST2, CC1
2 VB3, CC1, ZBE1
我需要拆分
PaymentCond
列,并希望通过简单的sql查询来做到这一点,因为我不知道如何使用函数,并且希望将其保持简单。这是我已经发现的:
SELECT id,
Substring(PaymentConditions, 1, Charindex(',', PaymentConditions)-1) as COND_1,
Substring(PaymentConditions, Charindex(',', PaymentConditions)+1, LEN(ANGEBOT.STDTXT)) as COND_2
from Payment
WHERE id = '1'
但这仅输出
id COND_1 COND_2
1 ZBE1 AP1, LST2, CC1
有没有办法将所有内容从
PaymentConditions
拆分为COND_1
,COND_2
和COND_3
等?提前致谢。
最佳答案
declare @SchoolYearList nvarchar(max)='2014,2015,2016'
declare @start int=1
declare @length int=4
create table #TempFY(SchoolYear int)
while @start<len(@SchoolYearList)
BEGIN
Insert into #TempFY
select SUBSTRING(@SchoolYearList,@start,@length)
set @start=@start+5
END
Select SchoolYear from #TempFY
关于sql - SQL:用查询分割逗号分隔的字符串列表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43386709/