【发布时间】:2020-11-07 16:55:14
【问题描述】:
我有两张桌子,一张用于订单,一张用于产品
ORDERS TABLE
+----------+-----------+--------+---------------------+----------+----------+---------------------+--------+
| order_id | order_by | status | created_at | product1 | product2 | delivery_date | pickup |
+----------+-----------+--------+---------------------+----------+----------+---------------------+--------+
| 1 | Maria | 0 | 2020-07-19 00:00:00 | 1 | 3 | 2020-07-17 00:00:00 | 0 |
| 2 | Joao | 0 | 2020-07-20 00:00:00 | 2 | 0 | 2020-07-20 00:00:00 | 0 |
| 3 | Jose | 1 | 2020-07-20 00:00:00 | 3 | 0 | 2020-07-20 00:00:00 | 0 |
| 4 | Matias | 0 | 2020-07-19 23:50:40 | 1 | 3 | 2020-07-19 00:00:00 | 0 |
| 5 | Matias | 0 | 2020-07-19 23:50:40 | 1 | 3 | 2020-07-19 00:00:00 | 0 |
| 6 | Joaozinho | 0 | 2020-07-19 00:00:00 | 1 | 3 | 2020-07-22 00:00:00 | 0 |
+----------+-----------+--------+---------------------+----------+----------+---------------------+--------+
PRODUCTS TABLE
+----+-----------+-------+
| id | name | price |
+----+-----------+-------+
| 1 | Produto 1 | 11 |
| 2 | Produto 2 | 22 |
| 3 | Produto 3 | 33 |
| 4 | Produto 4 | 44 |
| 5 | Produto 5 | 55 |
+----+-----------+-------+
EXPECTED OUTPUT
+----------+-----------+--------+---------------------+----------+----------+---------------------+--------+-----------+----------+-----------+----------+
| order_id | order_by | status | created_at | product1 | product2 | delivery_date | pickup | p1_name | p1_price | p2_name | p2_price |
+----------+-----------+--------+---------------------+----------+----------+---------------------+--------+-----------+----------+-----------+----------+
| 1 | Maria | 0 | 2020-07-19 00:00:00 | 1 | 3 | 2020-07-17 00:00:00 | 0 | Produto 1 | 11 | Produto 3 | 33 |
| 2 | Joao | 0 | 2020-07-20 00:00:00 | 2 | 0 | 2020-07-20 00:00:00 | 0 | Produto 2 | 22 | null | null |
| 3 | Jose | 1 | 2020-07-20 00:00:00 | 3 | 0 | 2020-07-20 00:00:00 | 0 | Produto 3 | 33 | null | null |
| 4 | Matias | 0 | 2020-07-19 23:50:40 | 1 | 3 | 2020-07-19 00:00:00 | 0 | Produto 1 | 11 | Produto 3 | 33 |
| 5 | Matias | 0 | 2020-07-19 23:50:40 | 1 | 3 | 2020-07-19 00:00:00 | 0 | Produto 1 | 11 | Produto 3 | 33 |
| 6 | Joaozinho | 0 | 2020-07-19 00:00:00 | 1 | 3 | 2020-07-22 00:00:00 | 0 | Produto 1 | 11 | Produto 3 | 22 |
+----------+-----------+--------+---------------------+----------+----------+---------------------+--------+------+-----------+-------+------------------+
我需要对订单表中的每个产品(product1、product2..)和具有不同名称(product1_name、product2_name..)的价格列进行 LEFT JOIN
【问题讨论】:
-
以表格形式提供您的样本数据和预期输出。您使用的是哪个 SQL 引擎,因为您已经标记了多个。
-
请同时采样数据。
-
更新了样本数据。我正在使用 MySQL。
-
预期输出?
标签: mysql sql database join mysql-workbench