दुर्भाग्य से, SQL सर्वर में इसे करने का कोई आसान तरीका नहीं है। ज्ञात समाधान हैं:
- xml ट्रिक (नीचे देखें);
- डेटा संचय करने के लिए चर का उपयोग करना (एकाधिक समूह पंक्तियों के लिए काम न करें, केवल कर्सर के साथ);
- कस्टम CLR एग्रीगेट;
यहाँ एक्सएमएल है:
select
n.name1,
stuff(
(
select ', ' + p.product
from prod as p
where p.id_name = n.id
for xml path(''), type).value('.', 'nvarchar(max)')
, 1, 2, '') as products
from name as n
यहाँ चर है:
declare @product nvarchar(max), @id int
select @id = 1
select @product = isnull(@product + ', ', '') + product
from prod
where id_name = @id
select name1, @product as products
from name
where id = @id