我有一个查询:
declare @colors table (color varchar(50));
declare @T table(RowNo int, LocationID bigint, TotalSales money, DBAName varchar(50), Color varchar(50));
insert into @colors
select distinct Color
from dbx.dbo.SampleData;
select top 5 *
from @colors
order by newid()
insert into @T
select (row_number() over (order by LocationID)) as RowNo,
LocationID, sum(TransAmount) as TotalSales, DBAName, Color
from dbx.dbo.SampleData
group by LocationID, DBAName, Color
select * from (
select LocationID, TotalSales, DBAName
from @T
) x
group by LocationID, TotalSales, DBAName
有以下结果:

我想知道如何RIGHT JOIN(或任何其他更好的解决方案) ,@colors以便@T每一行都有一个独特的颜色值,如下所示:

我很感激任何帮助。谢谢!