Sql Server CSV (Comma Seperated Value) çıktı üretme

Özellikle katalog tablolarının CSV çıktılarına sıklıkla ihtiyaç duyarız. Aşağıdaki sql script’ini kullanarak, siz de tablolarınızdan CSV çıktı alabilirsiniz.

Öncelikle tablomuzun orjinal haline bakalım;

SELECT Name FROM HumanResources.Shift WITH (NOLOCK)</pre> sql-csv-output_1

Şimdi öyle bir sql sorgusu yazacağız ki, çıktımız şu şekilde olacak;

Day, Evening, Night

SELECT
    SUBSTRING((
        SELECT ', ' + Name
        FROM HumanResources.Shift WITH (NOLOCK)
        FOR XML PATH('')
    ), 3, 8000) AS CSV

Sorguyu FOR XML anahtar kelimeleri ile çalıştırdığımıza ve PATH olarak ‘’ (boş string) verdiğimize dikkat edin.

SELECT ', ' + Name
FROM HumanResources.Shift WITH (NOLOCK)
FOR XML PATH('')


Böylece aşağıdaki sonucu elde etmiş olduk;

![sql-csv-output_2](/assets/uploads/2009/11/sql-csv-output_2.png "sql-csv-output_2")

Son olarak, sql sorgusunu SUBSTRING fonksiyonu içerisine koyduk, böylece baştaki virgül ve boşluk karakterlerinden (", ") kurtulmuş olduk.

![sql-csv-output_3](/assets/uploads/2009/11/sql-csv-output_3.png "sql-csv-output_3")

İlgili diğer makaleler

blog comments powered by Disqus

Engin Polat hakkında

Chief Architect, Microsoft RD, Microsoft MVP

Ada ve Ege'nin babası ;)

Kategoriler

İstatistik

Makale Adedi: 459

Creative Commons Lisansı