次の SQL ステートメントがあります。
SELECT *
FROM cars car
LEFT JOIN (SELECT *
FROM cars auto
LEFT JOIN steeringwheels sw
ON auto.steeringwheelid = sw.ID
WHERE material = 'leather') innertable
ON innertable.ID = car.ID
LEFT JOIN steeringwheels sw
ON auto.steeringwheelid = sw.ID
WHERE sw.material='plastic'
このクエリは、「Cars」テーブルの列を 2 回配信しますが、ID の値は Car テーブルの値とは異なります (クエリの目的は、値をマッピングして、Car.ID が何であるかを確認して、マテリアルが変更されることを確認することです)。革からプラスチックへ)。
------------------------------------
| ID | material | ID_1 | material_1 |
-------------------------------------
| 1 | leather | 4 | plastic |
| 2 | leather | 7 | plastic |
-------------------------------------
ただし、次のように ID 列のみ (マテリアル列ではなく) を出力したいと思います。
-------------
| ID | ID_1 |
-------------
| 1 | 4 |
| 2 | 7 |
-------------
内部クエリの ID 列を参照する方法が見つからなかったため、これを行うことができませんでした。例えば
SELECT id, innertable.id
(...)
また
SELECT id, auto.id
(...)
また
SELECT id, id_1
(...)
動作しないようです。どうすればこれを達成できますか?