[英]Best way to use Where Clause in SQL SERVER Query (for best performance)?
我已经在SQL Server中编写了2个查询,并将SUB查询与Where子句结合使用,请让我知道以下查询中的最佳方法。
Query 1. SELECT column1,column2,column3,JOINTAB.column5 FROM Table1
INNER JOIN (SELECT column1,column4,column5 FROM Table2 WHERE
column4='xxxx') AS JOINTAB ON Table1.column1=JOINTAB.column1
Query 2. SELECT column1,column2,column3,JOINTAB.column5 FROM Table1
INNER JOIN (SELECT column1,column4,column5 FROM Table2) AS JOINTAB
ON Table1.column1=JOINTAB.column1 WHERE JOINTAB.column4='xxxx'
为了获得最佳性能,请查询1或2?
最好的选择是根本不使用子查询。 不需要 这两种方法都会给您相同的结果:
SELECT t1.column1,t1.column2,t1.column3,t2.column5
FROM Table1 t1
INNER JOIN Table2 t1 on t2.column1 = t1.column1 and t2.column4 = 'xxxx'
--or
SELECT t1.column1,t1.column2,t1.column3,t2.column5
FROM Table1 t1
INNER JOIN Table2 t1 on t2.column1 = t1.column1
WHERE t2.column4 = 'xxxx'
查询性能是所有开发人员都非常关心的问题。 要查找性能和优化,只需查看“查询执行计划”即可。
您可以使用查询分析器,优化器将选择该查询分析器的执行计划。 只需在“查询”窗口中键入SQL语句,然后按Ctrl + L键。 查询以图形方式显示。
SQL Server提供的功能是查看查询执行计划的能力
运行查询并找到性能。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.