mysql,2个字段比较条件,能建立索引吗
业务场景:需要把项目的数据,同步到其他业务方(一旦新增或修改,都需要同步)。故涉及到2个字段,last_update_time,sync_time;
语句展示 select * from try_report where last_update_time > sync_time
我已经尝试建立了last_update_time ,last_update_time 的联合索引,但结果是无效的,
所以我想,大概是因为这个判断条件都是变量,所以是不是不能建立索引,或者有别的方法可以实现方法,可以建立索引呢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
其实六个explain跑一下就能看出问题来。。。主要问题不在于索引,在于
select *
如果一次性的量特别多建议先取id再取数据。。。
范围查询是可能会走索引的。
走不走索引完全取决与你需要返回的数据量,和 > 这个条件 < 的反向执行成本.
MySQL的优化器回计算正反面执行计划的成本,再选择最优的。