SELECT *
FROM tableName
WHERE 'value%' IN/LIKE (col1, col2, col3, col4)
我想在多个列中找到具有类似条件值的单个值。该值为'值%'必须在col1或col2中找到或者......就像这样。
我有10个要查找的大型查询,因此需要针对此进行优化查询。
提前谢谢你。
答案 0 :(得分:2)
你可以这样做:
SELECT *
FROM tableName
WHERE
col1 LIKE 'value%' OR
col2 LIKE 'value%' OR ..
希望这有帮助。
答案 1 :(得分:0)
要么为每个搜索创建一个带有union的漂亮长查询(MySQL并不擅长优化或条件),要么需要在所有相关列上创建fulltext index并执行{{3} }。
联合查询将如下所示:
true
全文索引的布尔搜索如下所示:
Hikari