は、あなたがこのように構成アイテム、イベント、およびシートという名前の3つのテーブルを持っているとしましょう:MySQLを使用して、3番目のテーブルとの関係に基づいて2つのテーブルを結合できますか?
項目
ID(int型)
EVENT_ID(int型)
節(INT)
イベント
ID(int型)
Venue_id(int型)
構成(int型)
シート
ID(int型)
Venue_id(int型)
構成(int型)
節(INT)
Face_value(int型)
私が構築しようとしていますItemテーブルからすべてのエントリを取得し、各アイテムのFace Valueを含むMySQLクエリ。これを行うために、クエリがなければなりません:
- はItem.Event_id値を使用して、イベント・テーブル内のそのエントリのEvent.Id
- にそれを一致させる、それがEvent.Venue_idとイベントを取る必要があります。構成と両方のANDの値が同じであるシートテーブルのエントリを見つけると、Itemのセクションと同じ値を持ちます。 Face_valueを返さなければなりません。
私は、3つのテーブルすべての情報を組み合わせる方法のために、これを構築するのに苦労しています。どのようにそれにアプローチする上の任意のアイデア?あるいは、これはSQLでは不可能ですか?
おかげトン:-)この構文を好みます。私はなぜこれが機能するのか理解しようとしています - 私はJOINの問題の順序を仮定していますよね?このように、mysqlはUSINGコマンドがSeatとEventテーブルの同じ名前の変数を参照していることを知っていますか? – Jack7890
それは多少問題です。 USINGはJOINのどちらかの側に存在する同じ名前の列を必要とします。ただし、Adam Bernierの説明のように、クエリを異なる順序で結合するように書き直すことはできますが、USINGは便宜上のものです。私はそれを直感的な方法で書きました。 – chaos
カオスは素晴らしいです!私はちょうどMySQLを学び始めて、あなたがやったことをやろうとしていますが、頭や尻尾を作ることはできません。私はまだJOINを完全に理解していません。 :-) – enchance