使用SQL 2008 R2和在Excel中使用我的Q數據數據透視圖(喜悅)!所以我不能刪除/過濾任何數據,只能添加到新的列中:日期具體計算sql
month user target
1 001 1000
1 001 1000
1 002 2000
1 001 1000
2 002 2000
2 002 2000
3 002 2000
3 002 2000
4 002 2000
我想應該是這樣的內容:
month user target New col
1 001 1000 1000
1 001 1000 0
1 002 2000 2000
1 001 1000 0
2 002 2000 2000
2 001 2000 1000
3 002 2000 2000
3 002 2000 0
3 002 2000 0
3 001 2000 1000
4 002 2000 2000
4 001 1000 1000
所以基本上我希望每個用戶的目標只有一個新的一個月的第一個實例顯示,然後顯示「0」爲每個實例此後一個月。這個查詢需要一個年度目標,並將其除以12來獲得每月的水平。在我的示例中,用戶001的目標金額將是「新上限」而不是「目標」列的總和,因爲計算年度/ 12時,它只是將該金額存入任何存在用戶記錄的位置並彙總該列遠遠超過實際目標。
所以這就是說,對於每個月,用戶001的每月目標爲1000,而用戶002的每月目標爲2000.這就是爲什麼我無法總結目標列。
爲什麼我需要這種格式?因爲這些數據在其他數據的excel中被用在數據透視圖中,我需要將它彙總並彙總爲excel中的總計。所以我不想總結'目標專欄',而是總結'新專欄',然後當我看到所有員工在我的關鍵點上時,它總計了這些員工的目標,當我深入到個人,它只顯示我個人的目標。
這讓我難以忍受的搜索遍佈網路的日子,沒有快樂。如果有人真的試圖幫助我,但是我想問/想要讓我困惑,我會在這裏更新/編輯任何需要的東西。這將是如此巨大,如果我能得到這個解決!
什麼專欄告訴你,如果「實例」是第一個? – Lamak
如果您的約束條件允許使用臨時表,您可能會發現在兩個或更多遍中執行操作更容易:首先通過SELECT DISTINCT month,user,target,second pass來添加其他行,例如 – Angst
所以我在想Row_Count()或者我有一個唯一的col,我們可以調用ROWID,它是增量式的,也可以使用。我可以使用與't1'形式的臨時表作爲(選擇.....) – user3486773