我想检索一行包含关键字" off"和sc_id必须等于" 2"。我正在尝试跟踪查询,但它给了我带有关键字" Off"的行。并且还给出了所有sc_id。怎么解决这个问题。 id搜索是必须的部分。
查询
SELECT c.* , sc.* , sm.* ,ca.*
from store_category sc
INNER JOIN store_manufacture sm
ON sm.sm_id=sc.store_id
INNER JOIN categories ca
ON ca.cat_id=sc.cat_id
INNER JOIN coupons c
on c.c_sc_id=sc.sc_id
WHERE sc.sc_id=2
AND c.c_name LIKE '%off%'
OR sm.sm_brand_name LIKE '%off%'
OR ca.cat_name LIKE '%off%'
OR c.c_description LIKE '%off%'
答案 0 :(得分:1)
你需要在条件中使用括号,试试这个:
SELECT c.* , sc.* , sm.* ,ca.*
from store_category sc
INNER JOIN store_manufacture sm
ON sm.sm_id=sc.store_id
INNER JOIN categories ca
ON ca.cat_id=sc.cat_id
INNER JOIN coupons c
ON c.c_sc_id=sc.sc_id
WHERE sc.sc_id=2
AND (c.c_name LIKE '%off%'
OR sm.sm_brand_name LIKE '%off%'
OR ca.cat_name LIKE '%off%'
OR c.c_description LIKE '%off%');