Я следующий запрос:Преобразование строк заголовков столбцов с итогами
SELECT
g.Gender,
a.AgeGroup,
count(*) as Count
FROM
client c
INNER JOIN AgeGroup a
ON c.age BETWEEN a.StartRange AND a.EndRange
INNER JOIN Gender G on
C.GenderID = G.GenderID
group by
g.Gender,
a.AgeGroup
order by AgeGroup, Gender
, который дает следующие результаты:
Gender AgeGroup Count
Male <=25 4
Unknown <=25 2
Female >35 2223
Male >35 6997
Transgender >35 43
Unknown >35 2
Female 26-35 413
Male 26-35 590
Transgender 26-35 5
Что я нуждаясь, чтобы попытаться сделать хотя это преобразовать Пол столбцы к заголовкам столбцов и включают итоговые значения.
AgeGroup Male Female Trans Unknown Total
<= 25: 4 0 0 2 6
26 - 35: 590 413 5 0 1008
> 35: 6997 2223 43 2 9265
Total: 7591 2636 48 4 10279
Я получил это далеко:
SELECT *
FROM (
SELECT
g.Gender as [Gender],
a.AgeGroup
FROM
client c
INNER JOIN AgeGroup a
ON c.age BETWEEN a.StartRange AND a.EndRange
INNER JOIN Gender G on
C.GenderID = G.GenderID
) as s
PIVOT
(
COUNT(Gender)
FOR [Gender] IN (Male,Female,Transgender,Unknown)
)AS pvt
, который возвращает это:
AgeGroup Male Female Transgender Unknown
<=25 4 0 0 2
26-35 590 413 5 0
>35 6997 2223 43 2
Но у меня нет итогов.
Есть ли способ, которым я могу это сделать?
попытка отрываясь _pivot с count_, множество примеров [на сайте] (http://stackoverflow.com/search?q=%5Bsql-server%5D+pivot+with+count). – Tanner
также, пожалуйста, постарайтесь опубликовать все как текст, если это возможно. В вашем случае (ожидаемые и фактические результаты). Также попробуйте включить образцы DDL, заявления DML – TheGameiswar
Спасибо @Tanner, удалось выяснить это и обновить сообщение. Однако я не могу понять, как получить итоги. – Philip