ttdms 发表于 2013-6-4 16:55:27

求助查询语法问题!求大腿帮忙

select * from p_ecms_movie where isgood=9 and classid='59' or classid='60' or classid='62' order by newstime desc limit 10明明已经用isgood=9查询了..可为什么还是能查询到isgood=0的数据..请问哪里错了吗?

kider 发表于 2013-6-4 17:54:07

语句中没有括号,又有这么多or,当然了。
按照查询目的,适当加括号解决。

lsmir2 发表于 2015-6-27 00:15:28

本帖最后由 lsmir2 于 2015-6-27 00:20 编辑

你用了 or
select * from p_ecms_movie where isgood=9 and classid='59' or classid='60' or classid='62' order by newstime desc limit 10
条件是 isgood=9 与 classid='59'或者classid='60' or classid='62'    
满足 isgood=9 与 classid='59'   的返回
满足   classid='60' or classid='62' 也返回
最后再分组 排序

kevin_mariadb 发表于 2015-11-3 14:13:22

那么多的or ,当然会是这个结果。
页: [1]
查看完整版本: 求助查询语法问题!求大腿帮忙