只是想知道如果WHERE子句指定了主键(或唯一索引),MySQL是否足够智能来停止搜索,就像你手动指定了LIMIT 1一样?
答案 0 :(得分:0)
我很确定,因为这是一个简单且非常明显的优化。没什么好听的。
答案 1 :(得分:0)
答案 2 :(得分:0)
好像您已手动指定LIMIT 1
不要这么认为,指定limiT 1
会将返回的行数限制为仅1。而如果你说where col1 = val1
,那么将返回与条件匹配的所有行。既然primary key (or unique index)
不能有重复项,那么行数将是1个确定性的,因此将返回1行。
不确定两者是如何相同的,而且,不知道为什么要区分这两者。