2012-12-07 17 views
5

我有一個表在我的SQL Server數據庫,看起來像:添加具有空字段行到另一行

日期   小時   名稱
11-01        一個
11-01         b
11-01        空
12-01        一個
12-01        Ç
12-01        空

我想補充從「空」列到每個月的「a」列的小時數。因此,它看起來像: 日期   小時   名稱
11-01        一個
11-01         b
12-01         a
12-01        Ç

我能得到這個工作的唯一方法是通過修改表的選擇之前,以防止空的顯示出來。但我希望能夠在不修改數據庫的情況下做到這一點。

什麼是最好的方式去做這件事?

感謝

+0

+1表示明確,簡潔的問題。許多新用戶編寫冗長的不相關信息段落。保持它:) – Jono

+0

請澄清:你所期望的結果顯示爲'a',當它應該似乎產生10你看起來要求的邏輯。這是一個錯誤的估計,還是我誤解了你的要求? –

回答

3

這會爲你做它 - 按名稱分組或「A」(當名稱爲null)條件,並考慮的時間總和在那裏。

SELECT Date, SUM(Hours) AS Hours, MAX(Name) AS Name 
FROM TableName 
GROUP BY (CASE WHEN Name IS NULL THEN 'a' ELSE Name END)