一尘不染

在MySQL的LIKE查询中使用OR来比较多个字段

mysql

我一直认为您可以ORLIKE语句中使用它来查询MySQL中的内容。因此,如果我想将一行中的多个字段与1个关键字或字词进行比较:

SELECT * FROM MyTable WHERE Column1 OR Column2 LIKE '%keyword%';

如果我有一系列要比较的单词:

SELECT * FROM MyTable WHERE Column1 OR Column2 LIKE '%keyword1%' 
AND Column1 OR Column2 LIKE '%keyword2%';

我不相信语法是正确的。除了类似的东西,是否有一种有效的方法可以编写此代码:

SELECT * FROM MyTable WHERE Column1 LIKE '%keyword1%' OR Column2 LIKE 
'%keyword1%' AND Column1 LIKE '%keyword2%' OR Column2 LIKE '%keyword2%';

我能正确处理吗?


阅读 3404

收藏
2020-05-17

共1个答案

一尘不染

用这个::

SELECT * FROM MyTable WHERE (Column1 LIKE '%keyword1%' OR Column2 LIKE 
'%keyword1%') AND (Column1 LIKE '%keyword2%' OR Column2 LIKE '%keyword2%');
2020-05-17