mysql查询多个外键
mysql query for multiple foreign keys
mysql表格如下
+------------+----------------+----------------+
| booking_id | boarding_point | dropping_point |
+------------+----------------+----------------+
| 1 | 2 | 4 |
| 2 | 1 | 2 |
+------------+----------------+----------------+
+-------------+---------------+
| location_id | location_name |
+-------------+---------------+
| 1 | chennai |
| 2 | coimbatore |
| 3 | tiruppur |
| 4 | erode |
| 5 | salem |
+-------------+---------------+
boarding_point 和 dropping_point 是 location_id 的外键。
现在我希望 select 查询显示为
+------------+----------------+----------------+
| booking_id | boarding_point | dropping_point |
+------------+----------------+----------------+
| 1 | coimbatore | erode |
| 2 | chennai | coimbatore |
+------------+----------------+----------------+
任何人都可以建议我像上面那样显示的查询。
加入预订table两次到地点table:
SELECT
b.booking_id,
t1.location_name,
t2.location_name
FROM booking b
INNER JOIN location t1
ON b.boarding_point = t1.location_id
INNER JOIN location t2
ON b.dropping_point = t2.location_id;
mysql表格如下
+------------+----------------+----------------+ | booking_id | boarding_point | dropping_point | +------------+----------------+----------------+ | 1 | 2 | 4 | | 2 | 1 | 2 | +------------+----------------+----------------+
+-------------+---------------+ | location_id | location_name | +-------------+---------------+ | 1 | chennai | | 2 | coimbatore | | 3 | tiruppur | | 4 | erode | | 5 | salem | +-------------+---------------+
boarding_point 和 dropping_point 是 location_id 的外键。 现在我希望 select 查询显示为
+------------+----------------+----------------+ | booking_id | boarding_point | dropping_point | +------------+----------------+----------------+ | 1 | coimbatore | erode | | 2 | chennai | coimbatore | +------------+----------------+----------------+
任何人都可以建议我像上面那样显示的查询。
加入预订table两次到地点table:
SELECT
b.booking_id,
t1.location_name,
t2.location_name
FROM booking b
INNER JOIN location t1
ON b.boarding_point = t1.location_id
INNER JOIN location t2
ON b.dropping_point = t2.location_id;