题解 | #强制索引

针对上面的salaries表emp_no字段创建索引idx_emp_no

https://www.nowcoder.com/practice/f9fa9dc1a1fc4130b08e26c22c7a1e5f

/*
在MySQL中,强制索引是通过在查询中指定索引来实现的。如果你想确保查询使用特定的索引,你可以在查询中使用FORCE INDEX子句。
例如,假设你有一个名为users的表,它有一个名为idx_username的索引,用于username字段。如果你想强制查询使用这个索引,你可以这样写你的查询:
SELECT * FROM users FORCE INDEX (idx_username) WHERE username = 'john_doe';
在这个例子中,FORCE INDEX (idx_username)告诉MySQL,即使查询 planner 可能会选择一个成本更低的索引,或者可能不使用索引,它也应该使用idx_username索引来执行查询。
请注意,强制索引并不总是最优选择,因为它可能会忽略MySQL查询优化器可能发现的更优的执行计划。只有当你确定查询优化器选择了一个不正确的索引或者在某些特定情况下需要强制使用某个索引时,才应该使用FORCE INDEX。
*/
select * 
from salaries 
force index (idx_emp_no) 
where emp_no = 10005

全部评论

相关推荐

不愿透露姓名的神秘牛友
03-28 00:47
点赞 评论 收藏
分享
劝退式:感觉有人回才是不正常的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务