Re: [SQL ] 兩個資料表要產出數字 (count)
請問一下PIVOT用法
select * from (select B.declare_name,count(A.type) 人數 from @t2 A,@t B
where A.type = B.declare_no group by B.declare_name,B.declare_no ) as x pivot
(sum(人數) for declare_name in
([定期申報],[就職申報],[補正申報],[動態申報],[信託申報])) AS PVT
以上欄位都要把[XXXX]打出來嗎?
有沒有辦法不用打出欄位 [定期申報],[就職申報],[補正申報],[動態申報],[信託申報]
※ 引述《grence (多想兩分鐘 = =")》之銘言:
: SELECT *
: FROM @t2
: left join @t on type=declare_no
: select *,
: case declare_name when '定期申報' then 1 else 0 end[定期申報],
: case declare_name when '就職申報' then 1 else 0 end[就職申報],
: case declare_name when '補正申報' then 1 else 0 end[補正申報],
: case declare_name when '動態申報' then 1 else 0 end[動態申報],
: case declare_name when '信託申報' then 1 else 0 end[信託申報]
: FROM @t2
: left join @t on type=declare_no
: select
: sum(case declare_name when '定期申報' then 1 else 0 end)[定期申報],
: sum(case declare_name when '就職申報' then 1 else 0 end)[就職申報],
: sum(case declare_name when '補正申報' then 1 else 0 end)[補正申報],
: sum(case declare_name when '動態申報' then 1 else 0 end)[動態申報],
: sum(case declare_name when '信託申報' then 1 else 0 end)[信託申報]
: FROM @t2
: left join @t on type=declare_no
: /*
: 寫法想精簡一點可以查 pivot用法
: 我實驗的結果是效率沒比較好,也沒比較好讀…
: */
: ※ 引述《roga (凝視)》之銘言:
: : 各位板友大家好,小弟想請教一個 SQL 的問題
: : Delares 資料表
: : ________________________
: : declare_no declare_name
: : 01 定期申報
: : 02 就職申報
: : 03 補正申報
: : 04 動態申報
: : 05 信託申報
: : Members 資料表
: : ________________________
: : name type
: : 某甲 02
: : 某甲 03
: : 某乙 05
: : 某乙 03
: : 某丙 04
: : 某丁 05
: : 路人 01
: : 男人 02
: : 女人 02
: : 我想產生一張申報狀況的資料表,長得這樣:
: : 定期申報 就職申報 補正申報 動態申報 信託申報
: : ______________________________________________________
: : 人數 人數 人數 人數 人數
: : 請問有好的作法嗎?
: : 現在的句子是
: : SELECT
: : d.declare_no, d.declare_name, count(type) AS result
: : FROM Members, Declares d
: : WHERE type = d.declare_no
: : GROUP BY d.declare_no, d.declare_name
: : 但是產出的是
: : declare_no declare_name result
: : 01 定期申報 1
: : 02 就職申報 3
: : 03 補正申報 2
: : 04 動態申報 1
: : 05 信託申報 2
: : 但是這樣不太符合需求,希望對 SQL 熟悉的人可個忙
: : 謝謝!我的資料庫是 SQL 2005 ,謝謝 ^^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.64.158.44
討論串 (同標題文章)