關於SQL的兩個關聯表匯總問題
變動表
單號 日期 數量
OUT020304 2005.5.6 2324
OUT020304 2005.5.6 1233
OUT020405 2005.5.6 2622
OUT020405 2005.5.6 233
OUT020405 2005.5.7 255
OUT020605 2005.5.7 256
...
上面按日期來匯總單號,應該怎麼寫呢?
[解决办法]
create table tab(單號 varchar(18),日期 datetime, 數量 int)
insert tab select 'OUT020304 ', '2005.5.6 ',2324
union all select 'OUT020304 ', '2005.5.6 ',1233
union all select 'OUT020405 ', '2005.5.6 ',2622
union all select 'OUT020405 ', '2005.5.6 ',233
union all select 'OUT020405 ', '2005.5.7 ',255
union all select 'OUT020605 ', '2005.5.7 ',256
select 單號 , 日期, sum(數量) 數量 from tab group by 單號 , 日期
[解决办法]
按月统计:
select 單號 ,时间=convert(varchar(7),日期,120),sum(數量) 數量
from 表名 group by 單號,convert(varchar(7),日期,120
[解决办法]
select 單號 ,时间=convert(varchar(7),日期,120),sum(數量) 數量
from 表名 group by 單號,convert(varchar(7),日期,120)--少一个 ') '
select select 單號 ,时间=max(日期)--显示结束日期
sum(數量) 數量
from 表名 where 日期 between '2005-05-06 00:00:00 ' and '2005-05-07 23:59:59 '
[解决办法]
select 日期,单号,sum(数量) from 变动表 group by 日期,单号