0
たとえば、最初のクエリは2番目のクエリとは異なる処理を受けますか?一見2つのテーブルを結合する場合、WHERE句は結合の前後にテーブルサイズを縮小しますか?
クエリ1
SELECT t1.var1, t2.var2 FROM table1 t1
INNER JOIN table2 t2
ON t1.key = t2.key
WHERE t2.ID = 'ABCD'
クエリ2
SELECT t1.var1, t2.var2 FROM table1 t1
INNER JOIN (
SELECT var2, key from table2
WHERE ID = 'ABCD'
) t2
ON t1.key = t2.key
WHERE t2.ID = 'ABCD'
2番目のクエリは、より効率的であるかのように、それはそうです - 参加が始まる前table2のが低減され、最初のクエリは最初にテーブルを結合してから、後で減らすように見えます。私はteradataを使用しています。
2つのクエリのパフォーマンスで同一である必要があります(開始の)AMPCPUTimeのクエリログを確認してください。 Teradataは優れたSQLオプティマイザを備えています。そのため、特に単純なクエリの場合、適切な処理を行うことができます。 –