新手求一条SQL语句
表1字段如下
表1ID
应付款
日期
表2字段如下
表2ID
付款金额
表1ID
如表1有以下数据
表1ID 应付款 日期
1 500 2011-2-1
2 600 2011-2-2
3 800 2011-3-20
4 600 2011-3-21
5 600 2011-3-22
6 500 2011-4-1
7 400 2011-4-3
8 300 2011-5-1
如表2有以下数据
表2ID 付款金额 表1ID
1 100 1
2 50 1
3 60 1
4 500 2
5 800 3
6 500 4
7 50 4
8 100 6
得出的结果 以月份来统计
年 月 应付款 已付款 欠款
2011 2 1100 710 390
2011 3 2000 1350 650
2011 4 900 100 800
2011 5 300 0 300
------解决方案--------------------
SQL code
select year(a.日期)年,month(a.日期)月,sum(a.应付款) as 应付款,sum(b.付款金额) as 已付款,sum(a.应付款)-sum(b.付款金额) as 欠款
from 表1 a left join 表2 b on a.表1ID=b.表1ID
group by year(a.日期),month(a.日期)