假设我有以下表格结构" some_table" (目前没有使用索引)
long
,自动增量,无符号varchar(256)
varchar(500)
text
如果在三个字段(标题,备注,备注2)中找到关键字,我需要返回结果
一些示例查询如下
SELECT
id_notes, title, notes
FROM
some_table
WHERE
title like '%search_keyword%'
OR
notes like '%search_keyword%'
OR
notes2 like '%search_keyword%'
如何逐步进行优化。
index
会更好?index
会更好(请记住,2个字段是varchar
,第3个字段是TEXT
类型)?答案 0 :(得分:0)
前导%
会杀死使用索引的可能性。 OR
也是如此。您的查询是最佳编写的。
不,CONCAT
不会产生太大影响。
但是......考虑在3列上使用FULLTEXT
。它将是_much_faster,如果 FULLTEXT
的限制是可以接受的。