xcxy2015
2017-08-08 01:58
采纳率: 50%
浏览 1.5k

一个关于mysql里sql语句里面or关键字的问题

今天用mysql查询的时候,突然发现我在sql语句里面只是换了or关键字两边的顺序,可是查询结果就不一样,
可是or关键字两边不应该是等价的吗?麻烦哪位大神解答一下下面是那两个sql:

select * from question where( qtype = 'blank' AND( qrange like '%sql%' or '%java%')AND qdifficulty = 'primary' AND qstatae = 'pass');

select * from question where( qtype = 'blank' AND( qrange like '%java%' or '%sql%') AND qdifficulty = 'primary' AND qstatae = 'pass');

下面是mysql显示的查询结果(当运行这个sql的时候他会被选中,图片中sql顺序同上面的顺序):
图片说明

图片说明

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • IT_badboys 2017-08-08 02:02
    已采纳

    你的条件不一样了撒:
    select * from question where( qtype = 'blank' AND( qrange like '%sql%' or qrange like '%java%')AND qdifficulty = 'primary' AND qstatae = 'pass'); 你把你sql语句这样写试试

    评论
    解决 6 无用
    打赏 举报
查看更多回答(3条)

相关推荐 更多相似问题