辅助法才分字符串的方法
在结合表进行查询时也很有用处.
CREATE FUNCTION FUNC_SPLIT_STR(
@s VARCHAR(8000),
@splitStr VARCHAR(10)
) RETURNS @re table(col varchar(100))
AS
BEGIN
DECLARE @t TABLE (ID INT IDENTITY,b bit)
INSERT INTO @t(b) SELECT TOP 8000 0 FROM sys.syscolumns a,sys.syscolumns b
INSERT @re SELECT SUBSTRING(@s,ID,CHARINDEX(@splitStr,@s+@splitStr,ID)-ID)
FROM @t
WHERE ID <= LEN(@s+'a')
AND CHARINDEX(@splitStr,@splitStr+@s,ID) = ID
RETURN
END
备注:
先找字符串的开始位置,我想的是要找分割符的开始位置,比这个麻烦些