web-dev-qa-db-ja.com

Microsoft Access 2016のJOIN ON構文エラー

いくつかのテーブルにクエリを実行していますが、何らかの理由でMicrosoft Access 2016からSQLクエリJOIN ON構文が正しくありません。具体的には、JOIN構文が強調表示され、それを削除するときにON構文が続きます(後者は、SQLの事前知識に基づく明確な理由によりJOIN ON構文)。

これがコードです:

SELECT Column1, Column2, Table1.Column3
FROM Table1 
JOIN Table2
    ON Table1.Column3 = Table2.Column3
   AND Column4 = '{NAME}'
ORDER BY Column4;

この構文に不正確な点はありますか?ちなみに、これはANSI-89構文を使用しています。

3
JMK

_INNER JOIN_、_JOIN ON_、_JOIN ON_の組み合わせなしで、Access 2016の_INNER JOIN_構文ではなく_LEFT OUTER JOIN_構文ではなく_RIGHT OUTER JOIN_構文が必要であることがわかったソリューションなどは、このDBMS(データベース管理システム)では機能しません。さらに、AND論理演算子をWHERE句に変更しました。これは、_JOIN ON_構文の後にANDが続くだけで、Access 2016では実行されないためです。さらに、_GROUP BY_構文はこのクエリの最小要件を超えているため、削除しました。したがって、私の質問の解決策は次のとおりです。

_SELECT Column1, Column2, Table1.Column3

FROM Table1 

INNER JOIN Table2

ON Table1.Column3 = Table2.Column3

WHERE Column4 = '{NAME}';
_
2
JMK

アクセスにはINNER JOINが必要です。単純なJOIN(SQL標準ではデフォルトでINNER JOINになるはずです)はAccessでは許可されていません。

2
ypercubeᵀᴹ