如何在SQL中按空格分割字符串

时间:2016-10-27 01:32:59

标签: sql sql-server sql-server-2008

我有一个这样的字符串: “我叫Jason Fernandez。”

以speace分隔的字符串具有不同的长度。 我希望每个字符串都用空格分隔,这意味着我希望有5个不同的项目。

1 my
2 name
3 is
4 Jason
5 Fernandez

我正在使用SQL Server 2008。

谢谢。

1 个答案:

答案 0 :(得分:2)

DECLARE @siteIds VARCHAR(255)
DECLARE @strngLen int
DECLARE @split TABLE(siteId VARCHAR(100))

SET @siteIds = 'My name is Jason Fernandez'

SET @strngLen = CHARINDEX(' ', @siteIds)

WHILE CHARINDEX(' ', @siteIds) > 0
BEGIN
    SET @strngLen = CHARINDEX(' ', @siteIds);

    INSERT INTO @split
    SELECT SUBSTRING(@siteIds,1,@strngLen - 1);

    SET @siteIds = SUBSTRING(@siteIds, @strngLen + 1, LEN(@siteIds));
END

INSERT INTO @split
SELECT @siteIds

SELECT * FROM @split