wlzboy
4 天以前 c098f1e3a3e052aa3d65584aae6dc003a70d75ad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
-- 为tb_vehicle_gps表的collect_time字段添加索引
-- 用于优化GPS分段里程计算时的查询性能,避免全表扫描导致超时
 
-- 检查索引是否已存在(MySQL 5.5兼容语法)
-- 如果索引已存在,请忽略下面的CREATE INDEX语句
 
-- 添加collect_time索引(用于时间范围查询)
CREATE INDEX idx_collect_time ON tb_vehicle_gps(collect_time);
 
-- 添加vehicle_id和collect_time的复合索引(用于单车辆时间范围查询)
CREATE INDEX idx_vehicle_collect_time ON tb_vehicle_gps(vehicle_id, collect_time);
 
-- 索引说明:
-- 1. idx_collect_time: 用于selectActiveVehicleIds查询,加速按时间过滤
-- 2. idx_vehicle_collect_time: 用于selectGpsDataByTimeRange和selectUncalculatedGps查询
--    按车辆ID+时间范围查询时可显著提升性能
 
-- 验证索引创建成功
SHOW INDEX FROM tb_vehicle_gps WHERE Key_name IN ('idx_collect_time', 'idx_vehicle_collect_time');