-1
我有一個場景,我想在分組數據後對記錄進行計數。 (實際方案包含多個表。)分組依據和組內計數
create table tblXYZ
(
id int,
Age int,
Typ char
)
表包含了這樣的數據:
| ID | Age | Typ
------------------
| 1 | 20 | A
| 2 | 20 | A
| 3 | 21 | B
| 4 | 22 | B
| 5 | 22 | A
| 6 | 23 | B
| 7 | 23 | A
| 8 | 23 | A
| 9 | 25 | B
| 10 | 25 | B
| 11 | 25 | A
如果我申請一組按年齡,我會得到:
| Age | Typ_Count
-------------
| 20 | 2
| 21 | 1
| 22 | 2
| 23 | 3
| 25 | 3
但我想根據每個年齡組的每種特定類型獲取typ_count。
期望的結果:
| Age | Typ_A_Count | Typ_B_Count
---------------------------------
| 20 | 2 | 0
| 21 | 0 | 1
| 22 | 1 | 1
| 23 | 2 | 1
| 25 | 1 | 2
感謝。
請發表您嘗試 –
你可以使用一個支點,如果類型是靜態的還是動態的支點來實現這一 –
難道他們必須要在不同的列?你不能按年齡和類型分組嗎?如果他們必須在列中使用每種類型的case語句。如果你有一個隨機數的類型,那麼你需要寫一個動態的Piviot,如:http://stackoverflow.com/questions/10404348/sql-server-dynamic-pivot-query。太多的未知因素在這個時候提出「優質」建議。 – xQbert