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

52 lines
2.4 KiB
Transact-SQL

USE [site_fuchs]
GO
/****** Object: UserDefinedFunction [dbo].[ott_jcsv_containskey] Script Date: 02.12.2020 21:05:05 ******/
DROP FUNCTION [dbo].[ott_jcsv_containskey]
GO
/****** Object: UserDefinedFunction [dbo].[ott_jcsv_containskey] 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_jcsv_containskey]
(
@groupcode varchar(10)
,@text varchar(4000)
)
RETURNS bit
AS
BEGIN
DECLARE @RET bit;
DECLARE @textinput varchar(4000) = REPLACE(ISNULL(@text, ''), ' ', '');
IF (@textinput = '' OR @textinput = '{}')
BEGIN
SET @RET = 0;
END
ELSE
BEGIN
-- Will be true
-- if any of the fragments exist in the list of text-items
DECLARE @Pattern varchar(20) = '%"' + @groupcode + '":"%';
DECLARE @P0 int = PATINDEX(@pattern, @textinput);
SET @RET = Case WHEN @P0 = 0 THEN 0 ELSE 1 END;
END
RETURN @RET;
END
GO
ALTER AUTHORIZATION ON [dbo].[ott_jcsv_containskey] TO SCHEMA OWNER
GO