如何在MYSQL中合并多个表

如何在MYSQL中合并多个表,mysql,sql,Mysql,Sql,如何在mysql中合并多个表并按日期排序 我有3个不同的表,我想做一个查询,以获取其中的所有数据,并按日期排序 SELECT * FROM table1, table2, table3 ORDER by date DESC TABLE 1 ID | USER ID | DATE | 2 4 2018 TABLE 2 ID | CAR ID | DATE | 3 9 2017 TABLE 3 ID | AIR ID

如何在mysql中合并多个表并按日期排序

我有3个不同的表,我想做一个查询,以获取其中的所有数据,并按日期排序

SELECT * FROM table1, table2, table3 ORDER by date DESC


TABLE 1 

ID  |  USER ID | DATE | 
 2      4        2018

TABLE 2 

ID  |  CAR ID | DATE | 
 3       9      2017

TABLE 3

ID  |  AIR ID | DATE | 
 4      6        2019
我期待这样的结果

ID | ALLID | DATE
2      4      2018
3      9      2017
4      6      2019

union
的正确语法是
union
/
union all
from
子句中的逗号语法不正确。不管怎样

因此:


您将无法创建第二列ALLID,但是您可以使用Join创建表,但是如果您尝试按ID搜索,则搜索结果将很困难。您可以提供更多上下文吗

要将表1和表2连接在一起,您需要有一个主键和一个外键,因此表1中的一列和表2中的一个cloumn都出现在表3中

因此,您可以使用表1中的ID和表2中的日期,因为两者都在表3中,所以这些是您的连接附件: 基本连接:所有数据

     SELECT * FROM table1 t1 JOIN table3 t3 JOIN table2 t2
更详细一点:(使用on作为where子句根据特定日期过滤)


现在您正在进行(隐式)交叉联接。向我们展示几行示例表数据以及预期结果。(作为格式化文本,而不是图像)既然你在问题中提到了工会,你不是用谷歌搜索了一下吗?我不知道如何使用它
     SELECT * FROM table1 t1 JOIN table3 t3 JOIN table2 t2
     SELECT * FROM table1 t1 JOIN table3 t3 JOIN table2 t2 ON t3.DATE=t2.DATE