basit bir sorgu şu şekilde olduğunu varsayalım: Biz sonuç kümesindeki bir kayıt varsaAralarında virgülle T-SQL sonuçlarının bir listesi nasıl yapılır?
SELECT x
FROM t
WHERE t.y = z
, bunu bir değere değişken @v
ayarlamak istiyorum. İki veya daha fazla kayıt varsa, sonuçların virgül ve boşlukla ayrılmasını isterim. Bu T-SQL kodunu yazmanın en iyi yolu nedir?
Örnek:
sonuç kümesi 1 rekor: 2 kayıtlarının
Value1
sonuç kümesi: 3 kayıtlarının
Value1, Value2
sonuç kümesi:
Value1, Value2, Value3
'Ne iyi yoldur' "En iyi" özneldir .. aradığınız şeylere bağlıdır. Daha spesifik olabilir misin? Tamamen T-SQL'de * yapılmasına * gerek yoksa istemcide bir çözüm kullanabilir misiniz? –
Bu geçerli midir? http://stackoverflow.com/questions/1048209/concatenating-column-values-into-a-comma-separated-list – MatthewMartin
Sadece bu amaç için genel bir işlev yazmak istiyorum .. normalde bunları .NET'de ele alıyorum sonuçları elde ettikten sonra kod, ancak SQL – MacGyver