INNER JOIN
価値があるのは、対「通常の」クエリの区別が不正確であることです。
コンマ スタイルの結合構文は、ANSI SQL-89 標準で定義されています。その後、その構文では一部のタイプの結合を実行できないことに気付きました。@Guffa が言及しているように、Oracle と Sybase は、外部結合を処理する結合構文に対する独自の拡張機能を発明しました。
ANSI SQL-92 では、標準でINNER
/OUTER JOIN
構文オプションが導入されました。しかし、下位互換性のために古い構文もサポートされており、現在でも仕様に含まれています。なのでどちらも標準です。
明示的な結合構文が公式の SQL 標準の一部になってから、文字通り 20 年が経過しました。それを「通常の」構文として受け入れる時が来ました。
どちらがより良いパフォーマンスを発揮しますか? どちらもまったく同じように機能します。すべての適切な SQL 実装は結合を同じ方法で処理し、両方の構文形式が同じコードを呼び出します。
SQL-92 JOIN 構文の方が明確です。多くのテーブルの結合がある場合、結合式を結合されたテーブルに隣接して配置できます。古い構文を使用すると、WHERE 句が多くの用語で乱雑になり、各用語がどの結合テーブルに対応するかを分類するのが難しくなります。
古い SQL-89 スタイルの方が明確であると主張する人もいますが、それは誤りです。:-)