我在表中有几列
Col1 , Col2 , Col3 , Col4
现在我想这样选择SELECT DISTINCT (Col1, Col2, Col3), Col4
即仅根据这三个列获得不同的结果。
最佳答案
从评论到另一个答案:
Can I get like this Col1, Col2 , Col3 and (Col4 in delimiter form)
是的,您可以使用
for xml path
.select Col1,
Col2,
Col3,
(
select ',' + T2.Col4
from YourTable T2
where T1.Col1 = T2.Col1 and
T1.Col2 = T2.Col2 and
T1.Col3 = T2.Col3
for xml path(''), type
).value('substring((./text())[1], 2)', 'varchar(max)') as Col4
from YourTable as T1
group by T1.Col1, T1.Col2, T1.Col3
SQL Fiddle
关于sql-server-2008 - 如何在特定列上选择不同的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12620842/