0
私は2台のテーブル車を持っていますモデルと車部分です。どちらもフィールドが主キーmodelIDとpartIDのパーツテーブルに関連しています。 私が選んだモデルカーに合ったパーツを表示しようとしています。 次は正常に動作します:mySQL:レコードテーブルを同じテーブルから取得
SELECT tblmodel.modelID,
tblmodel.model,
tblparts.part,
tblparts.part_number,
tblparts.description,
tblparts.list_price
FROM (tblmodel
INNER JOIN tblpartfitment
ON tblmodel.modelID = tblpartfitment.modelID)
INNER JOIN tblparts
ON tblpartfitment.partID = tblparts.partID
WHERE tblmodel.modelID = 1;
tblpartsテーブルは universal_part という名前のtinyint型のフィールドがあります。 universal_part = 真を元のクエリに含むすべての部分を含めるようにしています。
つまり、汎用の部品と指定されたmodelIDの部品を常に返します。
ユニオンを使用しようとしましたが、エラーが発生しました。
は素晴らしい作品が、もしModelIDが ''であるか、ModelIDにpartfitmentの関係がない場合、レコードは取得されません。普遍的な部品は常に返されるべきです。 – Rick
代わりに 'LEFT JOIN tblparts'を使用してください。 – ebahi
動作していないようです。同じように動作します。 – Rick