sql语句 两张表中有相同字段 合并成一张表

SELECT YEAR(签单时间) AS 年份,SUM(签单金额) AS 签单总金额
FROM table1
GROUP BY YEAR(签单时间)
查询得表1
表1
年份 签单总金额
2011 1111111

2012 2222222

2013 3333333

SELECT YEAR收款时间) AS 年份 ,SUM(收款金额) AS 收款总金额
FROM table2
GROUP BY YEAR(签单时间)
查询得表2
表二
年份 收款总金额
2011 222222
2012 333333
2013 222222

如何用sql语句实现直接生成表
年份 签单总金额 收款总金额
2011 1111111 222222
2012 2222222 333333
2013 3333333 222222

insert into 表1
select 收款总金额 from 表2

意思就是把表2的收款金额字段的内容写到表1

连表 不就行了

SELECT
t1.YEAR(签单时间) AS 年份,t1.SUM(签单金额) AS 签单总金额,t2.YEAR(收款时间) AS 年份 ,t2.SUM(收款金额) AS 收款总金额
FROM table1 t1
INNER JOIN table2 t2 on ti.YEAR(签单时间)=t2.YEAR(收款时间)
GROUP BY t1.YEAR(签单时间),t2.YEAR(签单时间)

以下是基本答案:
SELECT t1.YEAR AS YEAR,SUM(签单金额) AS 签单总金额,SUM(收款金额) AS 收款总金额
FROM table1 t1
LEFT JOIN table2 t2 ON t1.YEAR = t2.YEAR
GROUP BY t1.YEAR
ORDER BY t1.YEAR

扩展:如果是常用操作建议可以做成视图,外面套层CREATE VIEW VIEW_NAME AS
假如不止这两张表,可追加LEFT JOIN
例如:有表3 那么可以在原来的LEFT JOIN 下面追加 LEFT JOIN table3 t3 ON t1.YEAR = t3.YEAR