如何在单个语句中使用 AND 和 OR

How do I use AND and OR in a single statement

这是我的 SQL,数据由 PHP

提供
SELECT COUNT(*) FROM table 
WHERE approve='true' AND `description`like '%".$name."%' OR  `name`like '%".$name."%' OR `location` like '%".$location."%'

我在处理此查询时能够查看 approvefalse 的记录。

可能 ORed 条件应该放在括号中:

SELECT COUNT(*) 
FROM table 
WHERE 
    approve = 'true' 
    AND (
        `description` like CONCAT('%', :name, '%') 
        OR  `name`    like CONCAT('%', :name, '%') 
        OR `location` like CONCAT('%', :location, '%') 
    )