文章详情页
mysql建表索引问题求助
浏览:209日期:2022-06-11 15:09:14
问题描述
小弟建立数据表索引遇到几个问题,求助下大家:
1.
UPDATE table SET version = 2 WHERE id = ? AND version =?
这个语句里面id是自增长id,version是乐观锁。此时是应该给version建立一个单独索引,还是和id建联合索引,还是不需要建索引。
SELECT * FROM table WHERE a in () AND b =? ORDER BY c DESC
in的话应该是用不到索引的吧,这个怎么建?
SELECT * FROM tabler WHERE a = ? AND b > ? AND b < ? ORDER BY c DESC
这个如何建索引
问题解答
回答1:1.給verson來單獨索引就行。由於id是主鍵,而且唯一,所以索引效率其實最高。2.in是可以開啟索引,但是當in達到一定數量,所以可能會失效3.a b單獨做索引。或者 a和b做聯合索引
回答2:一般情况下单独给id字段创建索引就可以了。如果根据业务场景,能预计到每个id的修改次数非常多,可以把id,version创建联合索引。
相关文章:
1. android - Manifest.xml自己生成的GMS服务怎么删掉呢?2. java - git项目迁移到SVN怎么实现的?哪位大神指点指点3. css - 手机app中rem的基准值计算错误4. 站点内容复制额外增加的版权申明,真的很反人类。试问产品自己在用这个站点吗?5. 请问永久和临时重定向有什么区别6. 提示内部服务错误什么问题7. 关于thinkphp 5.1中,ajax提交数据url的格式写法,加花括号就出错,请老师指点8. 老师 我是一个没有学过php语言的准毕业生 我希望您能帮我一下9. 为什么要通过常量的方式拐弯抹角的写呢,直接写DSN之类的不好吗10. 绘制图表的问题
排行榜

网公网安备