gpt4 book ai didi

MySQL 与另一个条件搜索匹配

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

我有一个简单的 MySQL 查询,但是当我添加另一个搜索条件时,它无法在超过 9000 秒的合理时间内进行搜索。第二列 (col2) 已建立索引,因此我不确定如何更快地运行此查询? Col1 设置为全文,并且在没有第二个条件的情况下运行时运行速度很快。对此的任何帮助都会很棒。以下是查询示例:

SELECT *
FROM table
where
match(col1) against('word1') AND
col2 = 'word2'
limit 500000

最佳答案

MySQL 不会同时使用 FULLTEXT 索引和传统 B 树索引来访问表。

参见https://dev.mysql.com/doc/refman/8.0/en/explain-output.htmlEXPLAIN Join Types 。这也称为访问类型

当您解释查询时,每个表引用将显示一种访问类型,这是它用来读取表的方法。例如,通过唯一索引、通过非唯一索引、通过表扫描等。

全文 是这些访问类型之一。

据我所知,每种访问类型与其他连接类型都是互斥的。因此,它要么执行全文搜索,而不使用任何其他索引,要么使用您在其他列上的索引,在这种情况下,它将不使用全文索引。

使用非全文索引可能仍然是更好的选择,如果这有助于比全文索引更有效地选择一小部分行子集。

关于MySQL 与另一个条件搜索匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54990410/

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