Untitled

mail@pastecode.io avatar
unknown
plain_text
7 months ago
784 B
1
Indexable
Never
CREATE PROCEDURE get_columns @ids NVARCHAR(255)
AS
BEGIN
    DECLARE @sql NVARCHAR(MAX)
    SET @sql = N'
    WITH InputIds AS (
        SELECT value FROM STRING_SPLIT(@ids, '','')
    ),
    CTE AS (
        SELECT
            CASE
                WHEN COUNT(DISTINCT kwota) = COUNT(*) THEN ''kwota''
                ELSE NULL
            END AS kwota,
            CASE
                WHEN COUNT(DISTINCT typ) = COUNT(*) THEN ''typ''
                ELSE NULL
            END AS typ
        FROM
            (SELECT * FROM PrzykladowaTabela WHERE aplikacja IN (SELECT value FROM InputIds)) AS FilteredTable
    )
    SELECT
        STRING_AGG(COALESCE(kwota, typ), '', '') AS column_names
    FROM
        CTE;'

    EXEC sp_executesql @sql, N'@ids NVARCHAR(255)', @ids = @ids
END;