Mysql SQL:其中字段或字段2类似于%entry%
在以下情况下,是否有更简单/更有效的方法执行以下操作:Mysql SQL:其中字段或字段2类似于%entry%,mysql,sql,Mysql,Sql,在以下情况下,是否有更简单/更有效的方法执行以下操作: WHERE (Field LIKE %entry% OR Field2 LIKE %entry%) AND (Field LIKE %entry2% OR Field2 LIKE %entry2%) 这部分是 (Field LIKE %entry% OR Field2 LIKE %entry%) 您可以省略它。您可以执行以下操作: where concat_ws(' ', field1, field2) like '%entry%' a
WHERE (Field LIKE %entry% OR Field2 LIKE %entry%)
AND (Field LIKE %entry2% OR Field2 LIKE %entry2%)
这部分是
(Field LIKE %entry% OR Field2 LIKE %entry%)
您可以省略它。您可以执行以下操作:
where concat_ws(' ', field1, field2) like '%entry%' and
concat_ws(' ', field1, field2) like '%entry2%'
性能应该大致相同
如果您想提高性能,请考虑全文文本。
请参阅以下内容:
我猜entry和entry2是任意字符串。
where concat_ws(' ', field1, field2) like '%entry%' and
concat_ws(' ', field1, field2) like '%entry2%'
SELECT *
FROM mytable
WHERE MATCH(filed, field2) AGAINST ('entry' IN NATURAL LANGUAGE MODE)