Where子句不起作用

时间:2011-11-15 07:21:42

标签: sql

我正在尝试从两个表中获取数据。这是我的代码:

select p.nim, p.title, s.name, p.year, substring(p.abstrak, 1, 100), p.path, p.status 
from student s 
join project p 
on s.nim = p.nim
where p.title like "%foot%" 
or p.title like "%ball%" and p.status = 'active'

这个想法不是获取处于非活动状态的数据。但是此查询会使数据保持非活动状态。

我在这里做错了什么?

1 个答案:

答案 0 :(得分:6)

试试这个

select 
    p.nim, p.title, s.name, p.year, substring(p.abstrak, 1, 100), 
    p.path, p.status 
from student s 
join project p on s.nim = p.nim 
where 
    (p.title like "%foot%" or p.title like "%ball%") and p.status = 'active'

这与数学中Order of operations的概念相同:

1 + 2 * 3 = 7

1 + (2 * 3) = 7

(1 + 2) * 3 = 9