sql >> Databasteknik >  >> RDS >> Sqlserver

SQL Filtrera kriterier i joinkriterier eller where-sats som är mer effektivt

Jag skulle inte använda prestanda som den avgörande faktorn här - och helt ärligt tror jag inte att det finns någon mätbar prestandaskillnad mellan de två fallen, egentligen.

Jag skulle alltid använda fall #2 - varför? För enligt min mening bör du bara lägga in de faktiska kriterierna som fastställer JOIN mellan de två tabellerna i JOIN-satsen - allt annat hör hemma i WHERE-satsen.

Bara en fråga om att hålla saker rena och ställa saker där de hör hemma, IMO.

Uppenbarligen finns det fall med LEFT OUTER JOINs där placeringen av kriterierna gör skillnad när det gäller vilka resultat som returneras - de fallen skulle naturligtvis uteslutas från min rekommendation.

Marc



  1. Hur man laddar ner Postgres bytea kolumn som fil

  2. Hur man byter namn på en kolumn i SQL

  3. Spring JDBC-stöd och stor datauppsättning

  4. Returnera slumpmässiga rader från en tabell i MariaDB