mysql-外连接加入UNION版本的表
作者:互联网
我是sql新手.我有三个表,我想将前两个表合并,然后将结果与第三个表一起加入并仅选择所需的日期.
我已经做过UNION,但是我不知道OUTER JOIN会如何进入.
这些是我的表:
TABLE_1
| ID | Name |
-------------------
| 1 | John |
| 2 | Peter |
TABLE_2
| ID | Name |
-------------------
| 3 | Anne |
| 4 | May |
TABLE_3
| ID | Name | Date |
--------------------------------
| 2 | Peter | 2019-02-13 |
| 3 | Anne | 2019-02-12 |
| 4 | May | 2019-02-13 |
现在这是我的查询,仅结合了TABLE_1和TABLE_2:
SELECT ID, Name FROM TABLE_1 UNION SELECT ID, Name FROM TABLE_2
我希望最终结果从TABLE_1和TABLE_2返回ID和名称,其中TABLE_3中的日期为2019-02-13.
我希望它看起来像这样:
| ID | Name | Date |
--------------------------------
| 2 | Peter | 2019-02-13 |
| 4 | May | 2019-02-13 |
解决方法:
尝试这个,
SELECT A.* FROM
(
SELECT ID, Name FROM TABLE_1
UNION
SELECT ID, Name FROM TABLE_2
) AS A
JOIN TABLE_3
ON TABLE_3.ID = A.ID AND TABLE_3.DATE = "2019-02-13"
标签:outer-join,join,union,sql,mysql 来源: https://codeday.me/bug/20191211/2106342.html