2012-05-01 9 views
2

私はPHPとmysqlので、私の裸でnoobです。 item_nameという列のデータベースがあります。 LIKE句を使用してitem_name列のキーワードを使用してデータベースからデータを取り出しようとしていますが、何も返されません。下のコードに何か問題がありますか? ORの代わりにカンマとANDを試しましたが、まだ結果はありません。MYSQL LIKE節は何も返しませんか?

他の情報が必要な場合はお知らせください。 おかげ

$sql = mysql_query("SELECT category, item_name, link, price, pic, retailer FROM products WHERE item_name LIKE ('%gtx%') OR ('%video%') OR ('%sound%') ORDER BY id DESC"); 

$query = ($sql) or die (mysql_error()); 

while ($result = mysql_fetch_array($query)) { 
+2

あなたが知っている限りORの後で列名とLIKEを繰り返す必要があります – Hajo

答えて

2

LIKEなしでは、データベースは論理値のような( '%video%')項を理解しません。

+0

完璧に動作します!どうもありがとうございます! – myladeybugg

+0

の場合は、左側のチェックマークを使用して、それを受け入れられた回答としてマークしてください。 – Taryn

+0

ありがとう!私はそれをする方法が不思議だった – myladeybugg

0

は、使用してみてください:
WHERE(ITEM_NAME '%のGTXの%' OR ITEM_NAME LIKE '%の映像%' OR ITEM_NAME LIKE '%サウンド%') 。私はこれが実行されると思います。 mysqlインターフェイスで直接クエリをテストしましたか?そのため、古い文に

SELECT category, item_name, link, price, pic, retailer FROM products 
WHERE item_name LIKE ('%gtx%') 
     OR item_name LIKE ('%video%') 
     OR item_name LIKE ('%sound%') 
ORDER BY id DESC 

:あなたはあなたがSQLの各文は次のようになりますので、各ORLIKEを追加する必要があり、各OR

SELECT category, item_name, link, price, pic, retailer 
FROM products 
WHERE item_name LIKE ('%gtx%') 
    OR item_name LIKE ('%video%') 
    OR item_name LIKE ('%sound%') 
ORDER BY id DESC 
+0

作品!ありがとうございました! – myladeybugg

0

LIKEを指定する必要が

+0

作品!ありがとうございました! – myladeybugg

+0

それがうまくいけば、受け入れられた答えとしてこれを選択してください:) – Skatox

+0

私に知らせてくれてありがとう! – myladeybugg

関連する問題