2017-10-09 4 views
0

私はオンラインで見て、バックティックを使用してかっこを使用していますが、まだこのエラーが表示されています。誰かがそれを感謝するのを助けることができれば。 ORでWHERE句を使用していますが、エラーが発生しています

私のクエリ:

select p.*, a.street1, a.street2, a.cityeet1, a.street2, a.city, a.name 
from person p 
left join address a 
where (a.name = 'New Jersey' or a.name = 'Connecticut'); 

エラー:

ERROR 1064(42000):あなたは、あなたのSQL構文でエラーが発生しています。あなたのMariaDBサーバーのバージョンに対応するマニュアルをチェックして、正しい構文が1行目の 'where(a.name =' New Jersey 'またはa.name =' Connecticut ')'の近くで使用するようにしてください。

+0

WHERE句にエイリアスなしで試してみてください。 –

+0

ジョイン「オン」条件はありません。しかしそれは通常mysqlでそれを止めません。 – Uueerdo

+0

@Uueerdo MySQLでも、外部結合には 'ON'節が必要です。 – Barmar

答えて

0

値を結合する - おそらくこのような何か:

は、アドレス2つのフィールド

(マッチング値を示す)テーブルを結合ON(p.address_id = a.id)

select p.*, a.street1, a.street2, a.cityeet1, a.street2, a.city, a.name from person p left join address a ON (p.address_id = a.id) where (a.name = 'New Jersey' or a.name = 'Connecticut'); 

に参加

また、フィールド名(a.cityeet1)にタイプミスがあるようです。

+0

ありがとう、私は左の結合を使用せずに終了し、ちょうどテーブルに参加し、外部キーを結合するために句を使用しました。 –

関連する問題