问题:是否有人拥有单表,多列,前N,分段不同,选择查询的代码?
假设您有一个新表db..Stuff 像所有表格一样,Stuff中有尺寸和尺寸。我们总是想知道“表格Stuff中列X的值范围是多少?”因此,您可以在表Stuff中为几个不同的列编写SELECT DISTINCT。
如果您为多个列编写SELECT DISTINCT
select distinct s.colA, s.colB from Stuff as S
然后你得到了colA和colB的组合。这很好,但它会使你的结果成倍增加。如果存在“分段”的区别,它会更好。在哪里获得不同的colA并将其连接/联合到不同的colA以获得表Stuff中的内容的子集表示。
我想知道是否有人有这方面的SQL代码。
答案 0 :(得分:0)
尝试以下查询以获取ColA,以及所有具有逗号分隔符且具有某些COLA值的ColB:
select distinct s.colA,
STUFF((SELECT ','+S2.ColB
FROM [Stuff] AS s2
WHERE s2.ColA=s.ColA
FOR XML PATH('')
),1,1,'') AS ColB
FROM [Stuff] as S