Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Критерии за SQL филтър в критерии за присъединяване или клауза where, която е по-ефективна

Не бих използвал производителността като решаващ фактор тук – и честно казано, не мисля, че има някаква измерима разлика в производителността между тези два случая.

Винаги бих използвал случай №2 - защо? Защото според мен трябва да поставите само действителните критерии, които установяват JOIN между двете таблици, в клаузата JOIN - всичко останало принадлежи към клаузата WHERE.

Просто въпрос на поддържане на нещата чисти и поставяне на нещата там, където им е мястото, IMO.

Очевидно има случаи с LEFT OUTER JOIN, при които поставянето на критериите прави разлика по отношение на това какви резултати се връщат - тези случаи биха били изключени от моята препоръка, разбира се.

Марк



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Създайте свързан сървър в SQL Server (пример за T-SQL)

  2. Как да промените поредния номер на пощенски акаунт в база данни в профил в SQL Server (T-SQL)

  3. Защо заявката за Microsoft SQL Server 2012 отнема минути в сравнение с JDBC 4.0, но секунди в Management Studio?

  4. Как да импортирам файл на Excel в SQL Server?

  5. SQL Server 2016:Създайте таблица от SQL скрипт