1

私は両方の目が見えないかもしれませんが、多くのバージョンを繰り返して試行します...ハイフンとASステートメントを削除しました...

私はいつもMySql5.1サーバーからの解析エラー1064で終わりました。私はこれが有効であると本当に信じています、SQL Answers:

何か提案はありますか?

SELECT (dpa_articles.name, [...] corporations.isin) FROM corporations 
NATURAL JOIN corporations_dpa_articles ON (corporations.id = corporations_dpa_articles.corporation_id)
NATURAL JOIN dpa_articles ON (dpa_articles.id = corporations_dpa_articles.dpa_article_id)
NATURAL JOIN dpa_articles_dpa_categories ON (dpa_articles.id = dpa_articles_dpa_categories.dpa_article_id)
WHERE dpa_articles_dpa_categories.dpa_category_id = 28

#1064-SQL構文にエラーがあります。3行目の「ON(corporations.id =corporations_dpa_articles.corporation_id)NATURAL JOIN dpa_a」の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。

事前にどうもありがとうございました。

4

2 に答える 2

2

NATURAL JOINON節があってはなりません。

結合条件は暗黙的で、列名に基づいています。

INNER JOIN列名が異なるため必要です。id自然に結合しませんcorporation_id

于 2012-01-11T14:27:14.393 に答える
0

ONjoinステートメントの句をアンラップしてみましたか?

また、とは異なる結合の使用を検討することもできますnatural joinNatural join■他の結合メソッドほど多くの制御を提供することはできません。また、結合する列を指定することが有効かどうかもわかりません。がより適切inner join かもしれません。

于 2012-01-11T14:25:19.153 に答える