sql >> Databáze >  >> RDS >> Sqlserver

Kritéria filtru SQL v kritériích spojení nebo klauzuli where, která je efektivnější

Nepoužil bych zde výkon jako rozhodující faktor – a zcela upřímně, nemyslím si, že by mezi těmito dvěma případy byl nějaký měřitelný výkonnostní rozdíl.

Vždy bych použil případ č. 2 – proč? Protože podle mého názoru byste měli do klauzule JOIN vkládat pouze skutečná kritéria, která zakládají JOIN mezi dvěma tabulkami - vše ostatní patří do klauzule WHERE.

Jde jen o to, udržovat věci čisté a dávat věci tam, kam patří, IMO.

Je zřejmé, že existují případy s LEFT OUTER JOINs, kde umístění kritérií má vliv na to, jaké výsledky se vrátí – tyto případy by byly samozřejmě z mého doporučení vyloučeny.

Marc



  1. Jak funguje funkce Degrees() v PostgreSQL

  2. Metody řazení řádků na serveru SQL:ROW_NUMBER(), RANK(), DENSE_RANK() a NTILE()

  3. Úvod do pomalu se měnících rozměrů (SCD)

  4. Kdy názvy sloupců nebo tabulek Postgres potřebují uvozovky a kdy ne?