如果只选择一行,则排名前1位更快

当使用Top 1时,数据库是否会像选择循环一样快地截断选择循环?

因此, select top 1 * from customer where cusId = 1234

select * from customer where cusId = 1234更快?

cusId是独一无二的,那么MSSql理解为在没有top 1情况下“更快”吗?


如果cusId是主键,则两者应该是相同的re:性能。

编辑:

如果您拥有唯一的索引,则只会增加TOP 1的开销,无论如何都会返回1个结果。

如果你通过某种东西来订购,而不是仅对一行感兴趣,情况将会不同。

更多:

除非涉及表扫描并且cusId根本没有索引,否则不涉及循环。 在这种情况下, TOP 1无法帮助你。


在我看来, select * from customer where cusId = 1234会更快..它有一个操作比第一个操作更少...

链接地址: http://www.djcxy.com/p/53513.html

上一篇: Top 1 faster if only selecting one row

下一篇: Setting up XCode 4 workspace to build a library for both Mac and iOS