SQL - Filtern große Tabellen mit joins - best practices

Ich habe eine Tabelle mit vielen Daten und ich müssen sich mit einigen anderen großen Tabellen.

Nur einen kleinen Teil meiner Tabelle ist tatsächlich relevant für mich jedes mal.

Wann ist es am besten zum filtern meiner Daten?

  1. In der where-Klausel der SQL.

  2. Erstellen Sie eine temporäre Tabelle mit bestimmten Daten-und nur dann beitreten.

  3. Fügen Sie das Prädikat an die erste inner join ON-Klausel.

  4. Eine andere Idee.

1.

Select * 
From RealyBigTable
Inner Join AnotherBigTable On 
Inner Join YetAnotherBigTable On 
Where RealyBigTable.Type = ?

2.

Select * 
Into #temp
From RealyBigTable
Where RealyBigTable.Type = ?

Select * 
From #temp
Inner Join AnotherBigTable On 
Inner Join YetAnotherBigTable On 

3.

Select * 
From RealyBigTable
Inner Join AnotherBigTable On RealyBigTable.type = ? And  
Inner Join YetAnotherBigTable On 

Andere Frage:
Was passiert als erstes? Join oder Where?

InformationsquelleAutor Gil Stal | 2011-03-31

Schreibe einen Kommentar