1 回答

TA貢獻1797條經驗 獲得超4個贊
我將它們添加到sql中:
SELECT SUM(
coalesce(d1,0)+coalesce(d2,0)+coalesce(d3,0)+coalesce(d4,0)+coalesce(d5,0)+coalesce(d6,0)+coalesce(d7,0)+coalesce(d8,0)+coalesce(d9,0)+coalesce(d10,0)+coalesce(d11,0)+coalesce(d12,0)+coalesce(d13,0)+coalesce(d14,0)+coalesce(d15,0)+coalesce(d16,0)+coalesce(d17,0)+coalesce(d18,0)+coalesce(d19,0)+coalesce(d20,0)+coalesce(d21,0)+coalesce(d22,0)+coalesce(d23,0)+coalesce(d24,0)+coalesce(d25,0)+coalesce(d26,0)+coalesce(d27,0)+coalesce(d28,0)+coalesce(d29,0)+coalesce(d30,0)+coalesce(d31,0))
) total_hours ...
不過,最好重新組織數據庫,為每個值分配一個單獨的行。任何時候你有名為column1、column2等的列,這都是糟糕的數據庫設計的標志。所以像這樣:
create table volhours (
date date not null primary key,
volhours int
);
并選擇一系列日期的總小時數:
select coalesce(sum(volhours),0) total_hours from volhours where date between '2020-01-01' and '2020-01-31';
當然,您應該使用占位符。
- 1 回答
- 0 關注
- 134 瀏覽
添加回答
舉報