1

重複の可能性:
以前: 一意のテーブルではありません :: 現在: #1054 - 不明な列 - 理由がわかりませんか?

このクエリで以前の問題を解決した後、次のエラーが発生することになりました。

1054 - 「on 句」の不明な列「calendar_events.jobID」

理由がわかりません...そして、コラムは反抗的に存在します! 一番下のクエリの WHERE blah AND ... セクションと関係がありますか?

SELECT calendar_events.* , 
       calendar_users.doctorOrNurse, 
       calendar_users.passportName, 
       calendar_jobs.destination
  FROM `calendar_users` , `calendar_events`
INNER JOIN `calendar_jobs` ON `calendar_events.jobID` = `calendar_jobs.jobID`
     WHERE `start` >=0
       AND calendar_users.userID = calendar_events.userID

どんな助けでも大歓迎です!

乾杯

4

2 に答える 2

2
You should use `calendar_events`.`jobID` instead of `calendar_events.jobID`. 
于 2010-06-11T11:03:00.823 に答える
1

INNER JOINと、(コンマ)は、結合条件がない場合は意味的に同等です。どちらも、指定されたテーブル間でデカルト積を生成します(つまり、最初のテーブルのすべての行が2番目のテーブルのすべての行に結合されます)。

ただし、コンマ演算子の優先順位は、INNER JOIN、CROSS JOIN、LEFTJOINなどよりも低くなります。結合条件があるときに他の結合タイプとコンマ結合を混在させると、「on句」の「不明な列」の形式のエラーが発生する可能性があります。この問題への対処に関する情報は、このセクションの後半に記載されています。

差出人: http: //dev.mysql.com/doc/refman/5.0/en/join.html

お役に立てれば

于 2010-06-11T09:23:39.413 に答える