Files
Fuchs_Intranet/db/dbo.ott_jcontent.UserDefinedFunction.sql
T

50 lines
2.5 KiB
Transact-SQL

USE [site_fuchs]
GO
/****** Object: UserDefinedFunction [dbo].[ott_jcontent] Script Date: 02.12.2020 21:05:05 ******/
DROP FUNCTION [dbo].[ott_jcontent]
GO
/****** Object: UserDefinedFunction [dbo].[ott_jcontent] Script Date: 02.12.2020 21:05:06 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date, ,>
-- Description: <Description, ,>
-- =============================================
CREATE FUNCTION [dbo].[ott_jcontent]
(
@groupcode varchar(10)
,@text varchar(4000)
)
RETURNS varchar(4000)
AS
BEGIN
DECLARE @RET varchar(4000);
DECLARE @textinput varchar(4000) = REPLACE(ISNULL(@text, ''), ' ', '');
IF (@textinput = '' OR @textinput = '{}')
BEGIN
SET @RET = 0;
END
ELSE
BEGIN
DECLARE @Pattern varchar(20) = '%"' + @groupcode + '":"%';
DECLARE @P0 int = PATINDEX(@pattern, @textinput);
DECLARE @P1 int = @P0 + LEN(@pattern) -2;
DECLARE @P2 int = CHARINDEX('"',@textinput,@p1);
SELECT @RET = CASE WHEN @P0 = 0 THEN '' ELSE SUBSTRING(@textinput, @P1, @P2 - @P1) END;
END
RETURN @RET;
END
GO
ALTER AUTHORIZATION ON [dbo].[ott_jcontent] TO SCHEMA OWNER
GO