|
|
1
3
对于SQL Server 2005来说,这“通常”是正确的,因为它现在试图为尽可能多的查询预先生成执行计划。您的里程可能会有所不同,因为它取决于您的数据和SARG(测试您的查询计划并查看),但此tecdoc(他们使用的是SQL Server 2005的预发布版本)指出: http://www.microsoft.com/technet/prodtechnol/sql/2005/qrystats.mspx
|
|
|
2
1
我不知道这是否总是正确的,但使用一个在执行时间之前无法计算的变量将限制优化器在做出优化决策时使用它收集的关于表的任何统计数据的能力。引用的文章讨论了这一点,并给出了一些提示,说明如何在无法避免的情况下帮助SQL Server做出优化决策。 裁判: http://www.sqlmag.com/Article/ArticleID/42801/sql_server_42801.html |
|
|
3
1
如果使用文字,SQL Server可以构建更好的执行计划。我看到的一个案例涉及党派观点。如果您从带有变量的分区视图中进行选择,SQL将在运行时评估该变量,就像您使用文字SQL直接在底层表之后一样。 话虽如此,你应该在硬编码之前进行测试,如果你有两个查询只在字面上有所不同,那将是一种气味。 |
|
|
sqlrobert · SQL-如何查找不包含特定字段值的一组记录 2 年前 |
|
|
Nick Fleetwood · 调度语法的LINQ查询 3 年前 |
|
|
Mateen Bagheri · 选择表的计数并选择其自身 3 年前 |
|
Java · 使用交叉应用同时显示两列 3 年前 |