在另一个where语句中使用一个sql查询的结果

时间:2017-01-05 18:13:29

标签: php mysql

我在SQL中有这些表:

___ BookingsDatas

|------------|-----------------|------------|
| BOD_Id     | BOD_BookingId   | BOD_Rate   |
|------------|-----------------|------------|
| 1          | 8               | 19.00      |
| 2          | 9               | 29.00      |
|------------|-----------------|------------|

___预订

|------------|-----------------|------------|
| BOO_Id     | BOO_CustomerId  | BOO_RoomId |
|------------|-----------------|------------|
| 8          | 98              | 33         |
| 9          | 99              | 34         |
|------------|-----------------|------------|

___客户

|------------|-----------------|------------|
| CUS_Id     | CUS_FirstName   | CUS_Name   |
|------------|-----------------|------------|
| 98         | Eric            | Smith      |
| 99         | David           | Black      |
|------------|-----------------|------------|

我想链接这些表,所以我有这个查询:

SELECT * FROM ___BookingsDatas INNER JOIN ___Bookings ON ___BookingsDatas.BOD_Id=___Bookings.BOO_Id;

它实际上正在发挥作用。

问题出在第二个表格中我有一些信息需要与第三个表格链接。

例如,我需要得到以下结果:

|--------|---------------|----------|--------|----------------|------------|--------|---------------|---------|
| BOD_Id | BOD_BookingId | BOD_Rate | BOO_Id | BOO_CustomerId | BOO_RoomId | CUS_Id | CUS_FirstName | CUS_Name|
|--------|---------------|----------|--------|----------------|------------|--------|---------------|---------|
| 1      | 8             | 19.00    | 8      | 98             | 33         | 98     | Eric          | Smith   |
| 2      | 9             | 29.00    | 9      | 99             | 34         | 99     | David         | Black   |
|--------|---------------|----------|--------|----------------|------------|--------|---------------|---------|

那么,在这种情况下,如何在另一个where语句中使用第一个mysql查询的结果?

感谢。

1 个答案:

答案 0 :(得分:1)

也许我不理解这个问题,但你可以加入第三张桌子吗?

SELECT * FROM BookingsDatas A 
JOIN Bookings B ON 
   A.BOD_Id=B.BOO_Id
JOIN Customers C ON
   B.BOO_CustomerID = C.CUS_Id
;