php mysql查询问题

php mysql查询问题,php,mysql,sql,Php,Mysql,Sql,这是我的桌子: 我想得到一些客户,这些客户的/category字段的值是逗号分隔的 我正在尝试这样的事情: SELECT * FROM `customers` WHERE `for` LIKE ('%AMC PHD & WWS%' OR '%Rostfrei%' OR '%Thermopac%') 但是它给出的结果是空的。试试: SELECT * FROM customers WHERE for LIKE '%AMC PHD & WWS%' or for LIKE

这是我的桌子:

我想得到一些客户,这些客户的/category字段的值是逗号分隔的

我正在尝试这样的事情:

SELECT * FROM `customers` WHERE `for` LIKE ('%AMC PHD & WWS%' OR '%Rostfrei%' OR '%Thermopac%')
但是它给出的结果是空的。

试试:

SELECT * 
FROM customers 
WHERE for LIKE '%AMC PHD & WWS%'
    or for LIKE '%Rostfrei%'
    or for LIKE '%Thermopac%'

RedFilter的SQL是正确的,但您还应该知道“for”是MySQL保留字。应避免将其用作列名,或在使用时使用反勾号:

SELECT * 
FROM customers 
WHERE `for` LIKE '%AMC PHD & WWS%'
    OR `for` LIKE '%Rostfrei%'
    OR `for` LIKE '%Thermopac%';
另一种方法是,键入一次列名:

SELECT * FROM customers WHERE `for` REGEXP 'AMC PHD \& WWS|Rostfrei|Thermopac';

它似乎起作用了。。但有没有办法让我不必一次又一次地写字段名。。?