Chciałem tylko spróbować czegoś. Użyłem funkcji OFFSET. To nie wymóg myślę dla przykładowych danych, ale nie wiem, czy jego kuloodpornej całą drogę:
kod SQL
declare @myt table (country nvarchar(50),percentage int)
insert into @myt
values
('India' ,12),
('USA' ,20),
('Australia' ,15),
('Qatar' ,10),
('Denmark',10)
DECLARE @TotalRows int
SET @TotalRows = (select CEILING(count(*)/2.) from @myt);
WITH dataset1 AS (
SELECT *,ROW_NUMBER() over(order by country) as rn from (
SELECT Country,percentage from @myt a
ORDER BY country OFFSET 0 rows FETCH FIRST @TotalRows ROWS ONLY
) z
)
,dataset2 AS (
SELECT *,ROW_NUMBER() over(order by country) as rn from (
SELECT Country,percentage from @myt a
ORDER BY country OFFSET @TotalRows rows FETCH NEXT @TotalRows ROWS ONLY
) z
)
SELECT * FROM dataset1 a LEFT JOIN dataset2 b ON a.rn = b.rn
Wynik
Większość ludzi tutaj chce sformatowany tekst, a nie obrazy. – jarlh
Skąd wiemy, która kolumna ma być używana w każdym kraju? – jarlh
jarlh - Czy pytanie nie jest jasne za pośrednictwem obrazu? Kolejność, w jakiej kraje są obecne, tylko w tej kolejności musimy podzielić. Podobnie jak w - Indie i USA są pierwszym i drugim krajem, aw kolejnych kolumnach powinny znaleźć się następujące kraje. –