none
Sql'de belrili bir karakter hangi sutunlarda varsa o sütunları listeleme RRS feed

  • Soru

  • Merhaba

    Sqlde bir sorgu yazmada sıkıntı yaşıyorum tabloda ki alanların hepsini gezip "A " harfi hangi sütunlarda varsa o sütunları listeleme

    Yardımlarınıza ihtiyacım var 

    Örneğin tablom aşağıdaki gibidir

    olması gereken çıktı

    22 Eylül 2022 Perşembe 05:07

Tüm Yanıtlar

  • Bu sanki bir XY problemi gibi. Neyse:

    SELECT alan1, alan2, alan3, alan4
    INTO #tablo
    FROM(VALUES('A', 'B', 'A', 'C')) t(alan1, alan2, alan3, alan4);
    SELECT * FROM #tablo;
    DECLARE @cols VARCHAR(MAX), @sql NVARCHAR(MAX);
    WITH data(col) AS (SELECT CASE WHEN EXISTS (SELECT * FROM #tablo AS t WHERE alan1='A') THEN 'alan1' END
                       UNION
                       SELECT CASE WHEN EXISTS (SELECT * FROM #tablo AS t WHERE alan2='A') THEN 'alan2' END
                       UNION
                       SELECT CASE WHEN EXISTS (SELECT * FROM #tablo AS t WHERE alan3='A') THEN 'alan3' END
                       UNION
                       SELECT CASE WHEN EXISTS (SELECT * FROM #tablo AS t WHERE alan4='A') THEN 'alan4' END)
    SELECT @cols=STRING_AGG(col, ',')FROM data;
    SET @sql=N'Select '+@cols+N' from #tablo;';
    PRINT @sql;
    EXEC sp_executesql @sql;
    DROP TABLE #tablo;
    



    Blog
    How to create a Minimal, Reproducible Example
    The way to Go.
    World's most advanced open source (object-) relational Database.
    Flutter (for mobile, for web & desktop.


    Not: Temelin geri zekali arkadasi Idris bu mesaja da atlayip ne kadar aptal oldugunu bir kez daha belgeleyebilir. Kendisinin tek marifeti beni takip edip, neden her soruya cevap verdigimi, yardim etmeye calistigimi sorgulamaktir. Bu beyinsiz zavalliya, aptal oldugunu hatirlatmayi unutmayiniz.

    22 Eylül 2022 Perşembe 12:06