Re: [SQL ] 員工每月請假資料統計
※ 引述《oherman (qq)》之銘言:
: 資料庫名稱:SQL SERVER
: 資料庫版本:: 2012
: 內容/問題描述:
: 各位好
: 我有個員工每月請假資料裡面存放的資料如下:
: employe   date(varchar) off_hour(int)
: =============================================
: 張三      2016/01/02    8
: 張三      2016/01/10    8
: 李四      2016/01/03    4
: 李四      2016/01/04    2
: 李四      2016/01/26    8
: 王五      2016/01/02    2
: 王五      2016/01/16    1
: 王五      2016/01/25    8
: 想要依週曆產生如下資料(查詢一月份2016/01/01~2016/01/30資料)
: employe   第一週        第二週          第三週          第四週
: ==================================================================
: 張三      8             8               0               0
: 李四      6             0               0               8
: 王五      2             0               1               8
: 我可以不用procedure及function統計出像如上的資料表嗎?謝謝!
我的請假日期是直接用日期型態,不是用varchar型態
因此如果您是用varchar則請記得轉型
select employee
,isnull([1],0) as '第一週'
,isnull([2],0) as '第二週'
,isnull([3],0) as '第三週'
,isnull([4],0) as '第四週'
,isnull([5],0) as '第五週' from
(select
employee
,DATEPART(ww,RestDate) as [Week]
,sum(off_hour) as [off_hours] from resttb
group by employee,DATEPART(ww,RestDate)
) p
PIVOT
(
sum ([off_hours])
FOR [Week] IN
( [1], [2], [3], [4], [5] )
) AS pvt
order by employee desc;
執行結果
http://imgur.com/NYhhcGl

--
Sent from my Windows
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.136.240.135
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1460001223.A.D1D.html
→
04/07 11:55, , 1F
04/07 11:55, 1F
推
04/07 15:38, , 2F
04/07 15:38, 2F
推
04/07 15:45, , 3F
04/07 15:45, 3F
→
04/07 19:16, , 4F
04/07 19:16, 4F
推
04/10 03:09, , 5F
04/10 03:09, 5F
討論串 (同標題文章)
Database 近期熱門文章
PTT數位生活區 即時熱門文章