SQL文の書き方による性能の違いについて

以下の2種類のSQL文のうち、どちらの性能がよいですか?

[SQL文1]

SELECT.....
FROM TBL_A,TBL_B
WHERE TBL_A.基準日 = TBL_B.基準日
AND TBL_A.店番 = TBL_B.店番
AND TBL_A.取引先番号 = TBL_B.取引先番号
AND TBL_A.基準日 = 19990930
AND TBL_B.基準日 = 19990930


[SQL文2]

SELECT.....
FROM TBL_A,TBL_B
WHERE TBL_A.基準日 = TBL_B.基準日
AND TBL_A.店番 = TBL_B.店番
AND TBL_A.取引先番号 = TBL_B.取引先番号
AND TBL_A.基準日 = 19990930
「SQL文1」と「SQL文2」は、同じ性能となります。
なぜなら、Symfowareでは、抽出条件(TBL_A.基準日=19990930)と結合条件(TBL_A.基準日=TBL_B.基準日)を使って、TBL_Bの検索範囲を狭めているからです。すなわち、「SQL文2」は、まるでTBL_B.基準日=19990930がWHERE条件に指定されたかのごとく処理されるからです。
ただし、SQL文の見易さの観点からは「SQL文1」の記述の仕方を推奨します。
製品・サービス区分 Symfoware
製品・サービス情報
対象製品 Symfoware Server (Native Interface)
プラットフォーム Windows, Solaris, Linux
アンサー種別 設計/開発
このページの先頭へ