0
CREATE FUNCTION [dbo].[Split]
(
@String NVARCHAR(4000),
@Delimiter NCHAR(1)
)
RETURNS TABLE
AS
RETURN
(
WITH Split(stpos,endpos) AS
(
SELECT 0 AS stpos, CHARINDEX(@Delimiter,@String) AS endpos
UNION ALL
SELECT endpos+1, CHARINDEX(@Delimiter,@String,endpos+1)
FROM Split
WHERE endpos > 0
)
SELECT 'Data' = SUBSTRING(@String,stpos,COALESCE(NULLIF(endpos,0),LEN(@String)+1)-stpos)
FROM Split
)
GO
如何散布包括逗号,句点和空格在内的词?目前它正在分裂逗号所在的位置。SQL UDF分词并返回表
如果你要正确对待所有逗号,句号和空格一样的,为什么不使用REPLACE()将它们全部改为逗号传递第一@String之前地点? – 2014-09-03 04:14:47