在数据库中,日期列上的索引可以用于加速基于日期范围的查询
CREATE TABLE events (
id INT PRIMARY KEY,
event_date DATE
);
CREATE INDEX idx_event_date ON events(event_date);
BETWEEN
进行日期范围查询:SELECT * FROM events
WHERE event_date BETWEEN '2023-01-01' AND '2023-12-31';
这个查询会返回 event_date
在 2023 年内的所有记录。
>=
和 <=
进行日期范围查询:SELECT * FROM events
WHERE event_date >= '2023-01-01' AND event_date <= '2023-12-31';
这个查询与上面的 BETWEEN
查询效果相同,返回 event_date
在 2023 年内的所有记录。
>
和 <
进行日期范围查询:SELECT * FROM events
WHERE event_date > '2023-01-01' AND event_date < '2023-12-31';
这个查询会返回 event_date
在 2023 年内但不包括 1 月 1 日和 12 月 31 日的所有记录。
通过这些方法,你可以在日期列上使用索引来加速基于日期范围的查询。
领取专属 10元无门槛券
手把手带您无忧上云