mysql(优化01)

1.视图:
?view :查看帮助,其它类似
MySQL的create table as 与 like区别:
对于mysql的复制相同表结构方法,有create table as 和create table like 两种,区别是什么呢?
create table t2 as select * from t1 where 1=2 ; 或者 limit 0;
as创建出来的t2表(新表)缺少t1表(源表)的索引信息,只有表结构相同,没有索引。
create table t2 like t1 ;
like 创建出来的新表包含源表的完整表结构和索引信息
二者的用途:

as用来创建相同表结构并复制源表数据
like用来创建完整表结构和全部索引

oracle支持as,也是只有表结构没有索引;oracle不支持like。

show create table stu :查看表的创建语句:其它类似

2.内置函数:
这里写图片描述

3.数学函数:
这里写图片描述

4.日期函数:
这里写图片描述

5.预处理语句:
这里写图片描述
预处理:
prepare stm1 from “select * from stu where id > ?”;

set @i = 5;
执行:
execute stm1 using @i;

删除预处理语句
drop prepare stm1;

这里写图片描述
关闭自动提交
set autocommit = 0 ;

做一个还原点;
savepoint p1;

回滚还原点:
rollback to p1;

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述
9.truncate 清空表

这里写图片描述
常见sql技巧:

正则表达式的使用

\G: 查看列所对应的值

这里写图片描述

这里写图片描述

sql语句优化

1.查询慢查询日志;
2.找到sql语句
3.解析语句查看影响的行数
4.多,则加索引,以及索引能用的上
实践:
1.查询登陆以来查询、更新、删除、插入的使用情况次数
show status like “com_select%”;
show status like “com_insert%”;
show status like “com_update%”;
show status like “com_delete”;

  1. 查询查询、更新、删除、插入影响的行数;
    show status like “innodb_rows%”;

3.连接数库的次数:成功和失败都会记录;
show status like “connections”;

4.查询慢查询记录的状态和文件位置:
show variables like “slow_query%”;

  1. 慢查询默认的时间,默认如果大于10s则会记录到日志中
    show variables like ‘long%’;

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

6.定位执行效率较低的sql语句
1.在慢查询日志中的记录都是慢查询
2.定位:
1.explain select * from stu
2. desc select * from stu ;
看是否使用了索引,索引是否被用到;
看是否是复杂查询;
看是否全表扫描;
重点查看影响行数
3.发现可以加索引的列,再查看影响的行数

7.哪些情况可以使用索引:
1.like 查询时%号尽量往后面写
2. is null 或 is not null 时
3. wheregroup byorder by 、having 的语名可能会用到索引


8.哪些情况不使用索引
1.mysql会自动判断是否使用索引
2.or 的前列加索引,而后面列没有加索引,则所有索引失效
3.like 时 %号写在了最前面或使用了 % % 都会用不到索引
4.列为字符串类型,但查询是使用了其它类形。比如:
原本:"123" 查询时:123,则索引失效
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值