Sql函数-取Json数据

/*获取Json的Value,根据Key
@json:Json字符串\字段
@key:Json的Key
*/
ALTER FUNCTION [dbo].[GetJsonValue](@json NVARCHAR(MAX),@key NVARCHAR(128))
RETURNS NVARCHAR(128)
AS
BEGIN
  DECLARE @strFilde NVARCHAR(128),@strSub NVARCHAR(128),@strReturn NVARCHAR(128), @siteStart INT,@siteEnd INT
  SET @strFilde=@key+':"'
    SET @strReturn=''
  SET @siteStart=CHARINDEX(@strFilde,@json)
    IF @siteStart<>0
  BEGIN
        SET @strSub=@json
        SET @strSub=SUBSTRING(@strSub,@siteStart+LEN(@strFilde),LEN(@strSub)-1)
        SET @siteEnd=CHARINDEX('"',@strSub)
  IF @siteEnd<>0
    BEGIN
            SET @strReturn=SUBSTRING(@strSub,0,@siteEnd)
        END
        ELSE BEGIN
            SET @strReturn=@strSub
        END
    END
    RETURN @strReturn
END;


你可能感兴趣的:(Sql)