什么是更快的查询...其中Fname ='mark'或...其中Fname喜欢'mark'

时间:2009-08-07 20:00:03

标签: sql sql-server tsql comparison

什么是更快的查询选择...其中Fname ='mark'或选择...其中Fname如'mark'

感谢的

2 个答案:

答案 0 :(得分:1)

在这个特定的例子中,它们很可能是相同的,因为LIKE没有通配符。优化器检测到它是微不足道的并且无论如何都使它相等。

一般来说,“=”会比“喜欢”更快。

一个简单的例子

--Different plans because name has index.
--uses bookmark lookup but 40% of batch
SELECT * FROM sys.columns WHERE name = 'offset'
--uses clustered index scan 60% of batch
SELECT * FROM sys.columns WHERE name LIKE 'offset'
GO



--same plan, 50% each of batch
SELECT * FROM sys.server_permissions WHERE class_desc = 'ENDPOINT'
SELECT * FROM sys.server_permissions WHERE class_desc LIKE 'ENDPOINT'

答案 1 :(得分:0)

我认为平等查询通常要快得多。

SQL Server Performance thread按性能顺序列出操作数。