おはようございます。私は、例えば、それに参加してMySQLのクエリを記述する場合:「AND」演算子を使用している理由は、「WHERE」節がなくてもJOINで動作します。
それは「ブランド」に等しいその車を返します。
しかし、私は、クエリをこのように構造化する場合に気づい:
Select Car, Vendor from Cars JOIN Vendor On Vendor.IdCar=Car.IdCar AND Car="Brand"
それは前のクエリと同じものを返します。私がWHEREの代わりにANDを使用したことに気づいた。私はそれが働いたPHPのクエリでもテストしました。ですから、例えば:
Select Car, Vendor from Cars JOIN Vendor On Vendor.IdCar=Car.IdCar AND Car=$brand
代わりの
Select Car, Vendor from Cars JOIN Vendor On Vendor.IdCar=Car.IdCar WHERE Car=$brand
だから私は聞いてるのよ質問は:なぜ2番目のクエリの仕事はしますか? JOINが使用されたのは、WHERE句がANDの前に必要であることを確かめたからですか?あなたはwhere
句でon
句を配置することができ、物事が正しく行われますので、
はい、ANDが結合句に追加されます –
興味深い質問です。おそらくGordon Linoffが説明できるものでしょう。彼はこのタイプのものをよく使い、SQLに精通しています。 –
であり、特に 'JOIN'節ではなく' ON'節に 'AND'が適用されています。まったく同じではありませんが、ここでは結果のフィルタリングと同様の目的を果たします。 – Rogue