文章详情页
mysql建表索引问题求助
浏览:177日期: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. docker绑定了nginx端口 外部访问不到2. dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下3. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!4. docker start -a dockername 老是卡住,什么情况?5. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?6. 前端 - css中关于设置透明度的问题,有点混乱7. 我在centos容器里安装docker,也就是在容器里安装容器,报错了?8. docker-compose 为何找不到配置文件?9. 计算机 - 我学习了C语言,数据结构和一点点java基础,想自学C++,请问买什么入门书籍好?10. docker 下面创建的IMAGE 他们的 ID 一样?这个是怎么回事????
排行榜
