我有一堆 LIKE 语句的查询。我想优化/解释运行良好的查询。但是,如果我复制这个:
SELECT a.*, p.ek, p.vk, p.waehrung, p.onlinepreis
FROM arts a USE INDEX (i_aktiv, i_iln, i_marke )
LEFT JOIN pls p ON
p.iln = a.iln
LEFT JOIN fbs zu
ON a.farbe = zu.farbe
WHERE a.aktiv = "ja"
AND (
a.artikelbezeichnung LIKE ?
OR a.artikelbezeichnung_lang LIKE ?
OR ( a.farbe LIKE '%decke%'
OR zu.systemfarbe LIKE '%decke%'
OR zu.systemfarbe_en LIKE '%decke%'
)
)
)
...
作为我想添加'%decke%'
的参数,但如果我使用%%
.
知道我做错了什么吗?
我得到的错误是:
您的 SQL 语法有错误.... 检查附近... %'%'decke%' 在 OR ( a.farbe LIKE '%decke%' ...