SQL Server’da Satırları Gruplayıp Yanyana Yazdırma

Veritabanında sorgulama yaparken bazen dikey olarak satır satır gelen verileri yatay olarak virgül ile birleştirerek yazdırmak isteriz.

Basit bir örnek verecek olur isek örneğin iller tablomuz var 81 satır.

1

Bir de ilçeler tablomuz var o da 911 satır.

2

Standart sql bilgimiz ile biz bu tabloları alt alta birleştirebiliriz. Yani aşağıdaki gibi.

3

Oysa biz şöyle bir sonuç almak isteyebiliriz bazı durumlarda.

4

İşte bu yazıda bunun nasıl yapıldığından bahsediyor olacağım.

Bir select sorgusunun sonucunu xml olarak görebiliriz. Bunun için for xml path komutunu kullanırız.

5

Burada sonuç xml olarak gelir. Yani aşağıdaki gibi.

6

SELECT Convert(varchar,isim+’,’) FROM ilceler for xml path(”)

Dediğimizde aşağıdaki gibi virgül ile yanyana yazdırılan değerler görürüz.

7

select *,

(select convert(varchar,isim+’,’) from ilceler where il_no=iller.il_no FOR XML PATH(”)) as ILCELER

from iller

 

dediğimizde ise aşağıdaki gibi istediğimiz sonucu elde ederiz.

8

SQL Server’da Satırları Gruplayıp Yanyana Yazdırma” üzerine 3 yorum

  1. Merhaba,

    wp_entry_data diye bir tablom var.
    İçerisindeki veri Şöyle,

    entry_id element_id value
    2 6 Kırmızı
    2 8 Sarı
    2 11 5
    2 13 Kutu

    Bunları,
    Kırmızı, sarı, 5, Kutu
    SQL sorgusu ile nasıl yanyana sıralarım, ancak sorun şu MySQL kullanılıyor phpMyAdmin üzerinde.

    Tablo görseli.
    https://imgyukle.com/i/rnA9nj

    Beğen

Resul için bir cevap yazın Cevabı iptal et