2016-12-03 8 views
0

私は以下のクエリを使用しようとしていますが、動作していません。そのテーブルのすべてのデータベース行を表示しています。OR、LIKE、ANDをSQLで結合する方法は?

誰かが私の問題を解決するのを手伝ってください。

SELECT * 
FROM table 
WHERE interests LIKE '%example%' 
    OR category LIKE '%example%' 
    AND id=1 

id = 1の場所からこのクエリを実行します。しかし、このクエリに関連するすべてのレコードを表示します。

+0

'WHEREとid =「1''私が混在する必要がある場合に、個人的にトリック –

+0

を行う必要があります(「%例の%」またはカテゴリLIKE「%の例%」LIKEの利益) ANDsとORs、私は常にブラケットを使います。 –

答えて

1

()をグループ化し、それらの結果を結合する必要があります。

SELECT * 
FROM table 
WHERE (interests LIKE '%example%' OR category LIKE '%example%') 
    AND id= '1' 
+0

WHERE(興味のあるLIKE '%example%'またはLIKE '%example%')AND id = '1' ITS WORKING PERFECT !!!!ありがとうございます.... – Siddharth

1

ANDORよりも優先順位が高いので、あなたのクエリは、この

WHERE `interests` LIKE '%example%' 
    OR (`category` LIKE '%example%' AND `id`= '1') 

のように実行されます。あなたのクエリを修正するために括弧を使用し

WHERE (`interests` LIKE '%example%' OR `category` LIKE '%example%') 
    AND `id`= '1' 
+0

WHERE(興味のある '%example%'または 'LIKE'%example% ')AND id =' 1 ' ITS WORKING PERFECT !!!!ありがとうございました .... – Siddharth

関連する問題