2011-05-25 98 views
3

是我的表:PHP MySQL查詢問題

enter image description here

,我希望取得具有for/category領域是逗號分隔的一些值的客戶..

我想是這樣的:

SELECT * FROM `customers` WHERE `for` LIKE ('%AMC PHD & WWS%' OR '%Rostfrei%' OR '%Thermopac%') 

但它給出了空的結果。

回答

4

RedFilter的SQL是正確的,但你也應該知道 「爲」 是一個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'; 
3

嘗試:

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

這似乎是工作..但是有什麼辦法可以讓我不必一次又一次地寫字段名稱..? – 2011-05-25 19:31:45