Using T-SQL, return nth delimited element from a string

后端 未结 11 930
半阙折子戏
半阙折子戏 2020-11-22 14:45

I have a need to create a function the will return nth element of a delimited string.

For a data migration project, I am converting JSON audit records stored in a S

11条回答
  •  南笙
    南笙 (楼主)
    2020-11-22 15:17

    How about:

    CREATE FUNCTION dbo.NTH_ELEMENT (@Input NVARCHAR(MAX), @Delim CHAR = '-', @N INT = 0)
    RETURNS NVARCHAR(MAX)
    AS
    BEGIN
    RETURN (SELECT VALUE FROM STRING_SPLIT(@Input, @Delim) ORDER BY (SELECT NULL) OFFSET @N ROWS FETCH NEXT 1 ROW ONLY)
    END
    

提交回复
热议问题