gpt4 book ai didi

mysql - 缓慢的 MySQL 与 where 不同

转载 作者:行者123 更新时间:2023-11-29 07:25:45 25 4
gpt4 key购买 nike

我有一个包含两列(以及其他列)的大表:

  • 事件日期
  • 国家

这个查询非常快:

select distinct event-date from my_table

这个查询也非常快:

select * from my_table where country = 'US'

但是,这个查询很慢:

select distinct event_date from my_table where country = 'US'

我尝试添加所有索引组合,包括在两列上添加一个。没有什么能让第三个查询更快。

有什么见解吗?

最佳答案

您是否尝试过将结果暂存到临时表中,添加索引,然后从那里完成查询?不确定这是否适用于 MySQL,但这是我在 MSSQL 中经常成功使用的技巧。

CREATE TEMPORARY TABLE IF NOT EXISTS staging AS (
SELECT event_date FROM my_table WHERE country = 'US'
);
CREATE INDEX ix_date ON staging(event_date);
SELECT DISTINCT event_date FROM staging;

关于mysql - 缓慢的 MySQL 与 where 不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53907698/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com