加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

sql优化建议

发布时间:2020-12-11 23:16:40 所属栏目:MySql教程 来源:网络整理
导读:1、少用(不用)多表操作(子查询,连接查询)2、大量数据的插入多条insertload data into talbe建议,先关闭约束及索引,完成数据插入,再重新生成索引及约束。针对myisam: alter table 表名 disable keys; --禁用索引约束 alter table 表名 enable keys; --启
1、少用(不用)多表操作(子查询,连接查询)

2、大量数据的插入
多条insert
load data into talbe
建议,先关闭约束及索引,完成数据插入,再重新生成索引及约束。
针对myisam:
> alter table 表名 disable keys; --禁用索引约束
> alter table 表名 enable keys; --启用
针对innodb:
drop index,drop constraint --删除二级索引,约束,要保留主键

set autocommit = 0;
begin transaction;
大量插入
commit;
add index,add constraint

insert into 表名 values();
insert into 表名 values();
insert into 表名 values();
或 insert into 表名 values(),(),();

3、分页
limit offset,size 的使用,会大大提升无效数据的检索。
应该使用条件过滤方式,将检索到的数据尽可能精确定位到需要的数据上。

4、order by rand()
通过某种运算,确定随机主键,然后从数据表中获取。

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读