2013-10-22 56 views
0

在SQL表我有字段:描述語言SQL請求 - 搜索查詢不工作

我的語言領域具有像值: 「EN-GB」 或 「FR-FR」 。

SELECT * FROM items WHERE `name` LIKE '%yellow%' OR `description` LIKE '%yellow%' AND `language` = 'en-GB'; 

結果與搜索詞黃色都OK。但我也得到誰有語言的結果fr-FR,但在我的查詢中,我已設置爲語言en-GB

我已經在w3c上搜索了查詢,我認爲部分用「like」爲真。

我在這裏做錯了什麼?

回答

1

使用paranthesis

SELECT * FROM items 
WHERE (`name` LIKE '%yellow%' OR `description` LIKE '%yellow%') AND `language` = 'en-GB'; 
+0

效果很好,thanke你 – crelrm1

1

您需要使用括號作爲「OR」操作先求,在那裏你期待的「AND」操作符是。

SELECT * 
FROM  items 
WHERE (`name` LIKE '%yellow%' OR `description` LIKE '%yellow%') 
    AND `language` = 'en-GB' 
0

得到language到前面那裏

SELECT * FROM items WHERE `language`='en-GB' AND (`name` LIKE '%yellow%' OR `description` LIKE '%yellow%');