2017-07-30 9 views
-1

私はMysqlでスタックオーバーフローと初心者の新機能です。これは私がここで初めて尋ねる時です。同じテーブルを参照している2つの外部キーに対するmysqlクエリ

私は表「クライアント」上の2つの異なる列に苦労しています:BillAreaCode としてArea_Code 請求先住所コードとして サービス住所コード - 両方の表にArea_Codes

を参照する外部キーですそれはありませんがありますArea_CodeとBillAreaCodeの値が同じ場合に行を表示する問題。これは私がテーブルアダプタの上に持っているものです。

SELECT * FROM subscriber INNER JOIN 
     area_codes ON subscriber.Area_Code = area_codes.Area_Code JOIN 
     area_codes ON subscriber.BillAreaCode = area_codes.Area_Code 

:)

+0

それでは、どういう疑問がありますか? – Mureinik

+0

構文に何か不足していますか?すべてのレコードが表示されているわけではありません。 – Grace

答えて

0

が正しいを指定するには、このエイリアスを使用し、その後、あなたは別名に参加したい、あなたのテーブルを与えるのを助けることができ人のためのおかげで多くの(同じ)テーブル。また、さらに重要なことに、この場合は特にSELECT *を使用しないでください。同じカラムをarea_codesテーブルから2回読み込み、結果セットにカラム名が重複するため、読み込みたいカラムを指定してエイリアスを指定してください。

+0

この場合、エイリアス構文はどのように記述しますか? – Grace

+0

構文は同じですが、https://dev.mysql.com/doc/refman/5.7/en/join.html( 'table_factor'の定義を参照)とhttps://で説明されている' AS new_name'ですdev.mysql.com/doc/refman/5.7/en/select.html#idm140409147673680 – Progman

+0

ありがとうございますprogman、それをチェックします。 – Grace

関連する問題