分隔符上的SQL拆分逗号分隔列
这是一个split函数,它可以应用为dbo.Split('sf,we,fs,we',',')
,当我将字符串更改为列名时它不起作用,例如dbo.Split(table.columnName,',')
。
Select * from dbo.Split('dirk@test.com','@')
是有效的但是
Select * from dbo.Split((Select Email from Users),'@')
有一条错误消息:
Msg 102, Level 15, State 1, Line 1 Incorrect syntax near '('. Msg 102, Level 15, State 1, Line 1 Incorrect syntax near ','
function在这里:
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER FUNCTION [dbo].[Split] (@String varchar(8000), @Delimiter char(1)) returns @temptable TABLE (items varchar(8000)) as begin declare @idx int declare @slice varchar(8000) select @idx = 1 if len(@String)0) insert into @temptable(Items) values(@slice) set @String = right(@String,len(@String) - @idx) if len(@String) = 0 break end return end
它指的是: SQL 2005在分隔符上拆分逗号分隔列
或者有人可以给我一个类似的function,可以将一列分成两列
那是因为函数返回了一个TABLE。
SELECT Split(myColumn) FROM myTable
意思是
SELECT myOutputTableFromSplit FROM myTable
这意味着,从表中返回一个表并且SQL无法做到这一点。
上述就是C#学习教程:分隔符上的SQL拆分逗号分隔列分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/954193.html