SQL UNION结果格式

时间:2014-08-24 13:20:32

标签: sql union

我们说我有以下表格:

[表1]

DATE       |  VALUE
-----------|-------
10/10/2014 | 120.33
11/10/2014 | 234.02
12/10/2014 | 124.54
13/10/2014 | 545.67

[表2]

DATE       |  VALUE
-----------|-------
10/10/2014 | 345.35
11/10/2014 | 211.55
12/10/2014 | 643.90
13/10/2014 | 353.55

如何从两个表中获取格式如下的值:

DATE       |  table1.VALUE |  table2.VALUE
-----------|---------------|---------------
10/10/2014 | 120.33        | 345.35
11/10/2014 | 234.02        | 211.55
12/10/2014 | 124.54        | 643.90
13/10/2014 | 545.67        | 353.55

我试图使用UNION并添加一个假的" null"列但结果是一个表高于另一个。 (MySql SELECT union for different columns?

这甚至可能吗?

2 个答案:

答案 0 :(得分:2)

假设“Date”是两个表的唯一键,只需使用连接而不是联合...类似于:

select t1.Date, t1.value, t2.value
  from table1 t1 left join table2 t2 on t1.date=t2.date

答案 1 :(得分:1)

假设您的日期列中的日期是唯一的,您应该加入日期列上的表而不是使用联合

select a.date,a.value,b.value
from table1 a 
inner join table2 b on a.date = b.date

联接的类型取决于你......