MySQL LEFT JOIN 很慢,需要 27.82 秒
MySQL LEFT JOIN is slow and taking 27.82sec
这是我的 MySQL 查询,执行时间为 27 秒。
SELECT company_info.industry
, company_info.name
, company_aliases.name
FROM searcher_db.company_info
LEFT OUTER JOIN searcher_db.company_aliases ON company_info.id = company_aliases.id;
company_aliases 有 1883 条记录,company_info 有 71179 条记录,图像上显示了索引。
有人帮我解决这个问题吗?为什么要花这么多时间以及如何改进查询?
在 company_info.id 和 company_aliases.id 上添加索引,别名
CREATE INDEX index_name
ON table_name (column_name)
然后,不要设置 PRIMARY KEY (name
),而是将其设置在 table.id 上。在后台 MySQL 将文本转换为 ASCII,然后对其进行处理,因此需要时间,因此请避免这样做。搜索和其他操作在 Number 上比在 string 上更快。看看有没有帮助。
这是我的 MySQL 查询,执行时间为 27 秒。
SELECT company_info.industry
, company_info.name
, company_aliases.name
FROM searcher_db.company_info
LEFT OUTER JOIN searcher_db.company_aliases ON company_info.id = company_aliases.id;
company_aliases 有 1883 条记录,company_info 有 71179 条记录,图像上显示了索引。
有人帮我解决这个问题吗?为什么要花这么多时间以及如何改进查询?
在 company_info.id 和 company_aliases.id 上添加索引,别名
CREATE INDEX index_name
ON table_name (column_name)
然后,不要设置 PRIMARY KEY (name
),而是将其设置在 table.id 上。在后台 MySQL 将文本转换为 ASCII,然后对其进行处理,因此需要时间,因此请避免这样做。搜索和其他操作在 Number 上比在 string 上更快。看看有没有帮助。