sql.常见问题.将字符串拆分成多行

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

sql.常见问题.将字符串拆分成多行

【场景】数据库知识,将字符串拆分成多行 【chatgpt】 ![image.webp](/download/0100315e59d8478242279ff03e617969e8ee.webp) ![image.webp](/download/010089baaa1601ae45ff8413403bb71b348b.webp) 【案例】 ```sql alter FUNCTION dbo.SplitString ( @InputString NVARCHAR(MAX), @Delimiter NVARCHAR(1) ) RETURNS @OutputTable TABLE (id NVARCHAR(MAX)) AS BEGIN DECLARE @StartIndex INT, @EndIndex INT SET @StartIndex = 1 SET @EndIndex = CHARINDEX(@Delimiter, @InputString) WHILE @EndIndex > 0 BEGIN INSERT INTO @OutputTable (id) SELECT SUBSTRING(@InputString, @StartIndex, @EndIndex - @StartIndex) SET @StartIndex = @EndIndex + 1 SET @EndIndex = CHARINDEX(@Delimiter, @InputString, @StartIndex) END INSERT INTO @OutputTable (id) SELECT SUBSTRING(@InputString, @StartIndex, LEN(@InputString) - @StartIndex + 1) RETURN END alter procedure pro_test @billnos varchar(max) as begin declare @billnotable TABLE (id NVARCHAR(MAX)) insert into @billnotable select * from dbo.SplitString(@billnos,','); select FID,FBILLNO from T_PUR_POORDER bill inner join @billnotable inputs on bill.FBILLNO = inputs.id end exec pro_test 'CGDD000026A,CGDD000030A,CGDD000096A' ``` 【效果】传入按逗号分隔的字符串,能够将其转为表,进行联查 ![image.webp](/download/0100bc78251e1d5543eca4a0f982e09d9dd0.webp)

sql.常见问题.将字符串拆分成多行

【场景】数据库知识,将字符串拆分成多行【chatgpt】![image.webp](/download/0100315e59d8478242279ff03e617969e8ee.webp)![image.webp](/...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息