我在stackoverflow中问这个问题,因为它是正确的地方......
我知道它 非常广泛的主题,但一些小的,可能真的很方便......
对于像我这样的年轻开发者来说,了解查询优化可能会有用。
SQL Server 2005中的提示和技巧关于查询优化 ..
答案 0 :(得分:2)
基于此处的问题
例如
...WHERE tinyintcol = @intvalue
means a conversion of the column and invalidates an index
...WHERE tinyintcol = @tinyintvalue
例如
...WHERE DATEADD(day, 1, MyCol) > GETDATE()
should be
...WHERE MyCol > DATEADD(day, -1, GETDATE())
覆盖索引
GUID:不是聚集索引
答案 1 :(得分:1)
如果查询速度较慢,最明显的起点是确保使用索引。
答案 2 :(得分:1)
答案 3 :(得分:1)
对于查询,我可以添加到gbn
,recursive
和smaclell
以下内容:
INSERT
和DELETE
个查询UPDATE
对于多个记录而言比再次插入它们要慢。所以建议选择,删除,而不是以编程方式更新记录并使用现有密钥重新插入(注意CASCADE
和TRIGGERS
)