mysql优化实战

空气质量小时索引顺序先站点后时间

索引情况

在这里插入图片描述

根据时间范围查询索引失效

在这里插入图片描述

EXPLAIN  
SELECT station_code, station_name, data_time, aqi, pm25, pm10, o3, no2, so2, co, primary_pollutant, create_date
FROM wuhaiyizhangtu.t_air_pollution where data_time between '2022-12-01 14:00:00' and '2022-12-01 15:00:00'

以上sql执行时间200ms

在这里插入图片描述

最大时间,有索引,扫描行rows很高

在这里插入图片描述

EXPLAIN  
SELECT max(data_time)
FROM wuhaiyizhangtu.t_air_pollution

11

空气质量小时索引顺序先时间后站点

索引情况

在这里插入图片描述
在这里插入图片描述

根据时间范围查询索引有效

在这里插入图片描述

EXPLAIN  
SELECT station_code, station_name, data_time, aqi, pm25, pm10, o3, no2, so2, co, primary_pollutant, create_date
FROM wuhaiyizhangtu.t_air_pollution where data_time between '2022-12-01 14:00:00' and '2022-12-01 15:00:00'

以上sql执行时间76ms

在这里插入图片描述

最大时间,覆盖索引

在这里插入图片描述
在这里插入图片描述

查询不能用公式,不走索引

在这里插入图片描述

字段长度与类型问题

原数据库设计

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

原数据库大小156m,日数据不需要小时,类型type不会超过2位99类,conc字段贡献值为小数也不长
修改后数据大小为:38m

  • data_time字段改成datatime
  • conc从varchar(50)改成float(15,10)
  • pollutant_type从int改成TINYINT
  • 最后一个字段改成data

是否null

关联索引是否影响

varchar影响

影响内存

int

浮点型与整形的类型选择

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值