我有两个表如下: -
table1 table2
date time amount date time amount
20120101 1000 101 20120104 1000 10
20120101 1100 100 20120104 1100 11
20120104 1000 101 20120105 1000 11
20120104 1100 105 20120105 1100 8
我想加入这两个表以获得如下输出:
date time table1-amt table2-amt
20120101 1000 101 NULL
20120101 1100 100 NULL
20120104 1000 101 10
20120104 1100 105 11
20120105 1000 NULL 11
20120105 1100 NULL 8
获取此输出的 sql 查询是什么?我正在使用mysql数据库。
我尝试了以下查询:
select table1.date,table1.time,table1.close , table2.close
from table1,
table2
where table1.date=table2.date
and table1.time=table2.time;
它给了我输出
date time amount amount
20120104 1000 101 10
20120104 1100 105 11
人们将我引向左外连接,完全外连接我尝试了以下两个查询,但这并没有解决我的目的。
select * from table1 left join table2 on table1.date=table2.date ;
select * from table1 left join table2 on table1.date=table2.date union select * from table1 right join table2 on table1.date=table2.date;