【发布时间】:2021-08-30 07:46:24
【问题描述】:
我有一个超过 500k 行的表,我尝试使用索引来更快地获得结果。我有一个带有 BTREE 的 _Date 和 _Time 的索引,它仅在我仅查询列 _Date 和 _Time 时才有效。如何快速获得结果但包含所有列?我认为 TEXT 类型的列是个问题,因为它们没有长度。
SELECT _Date, _Time FROM logsTable
WHERE TIMESTAMP(_Date, _Time)
BETWEEN "2021-08-29T13:04" AND "2021-08-29T15:04"
LIMIT 135, 15;
#THIS IS THE INDEX THAT ONLY WORKS ONLY WITH _DATE AND _TIME
ALTER TABLE logsTable
ADD INDEX `logsTable_DateTime_Index` USING BTREE (`_Date`, `_Time`) VISIBLE;
表格列:
id int AI PK
raw text
type1 varchar(100)
type2 varchar(100)
desc text
address1 varchar(100)
address2 varchar(100)
num varchar(100)
_Date date
_Time time
serie varchar(100)
【问题讨论】:
标签: mysql sql optimization