mysql中并和或的优先级_MySQL或/和优先级?

小编典典

MySQL文档有一个很好的页面,其中包含有关哪些运算符优先的信息。

在该页面上,

12.3.1。运算符优先级

运算符优先级从最高优先级到最低优先级显示在以下列表中。一起显示在一行上的运算符具有相同的优先级。

INTERVAL

BINARY, COLLATE

!

- (unary minus), ~ (unary bit inversion)

^

*, /, DIV, %, MOD

-, +

<>

&

|

= (comparison), <=>, >=, >, <=, , !=, IS, LIKE, REGEXP, IN

BETWEEN, CASE, WHEN, THEN, ELSE

NOT

&&, AND

XOR

||, OR

= (assignment), :=

所以你原来的查询

Select

*

from tablename

where

display = 1

or display = 2

and content like "%hello world%"

or tags like "%hello world%"

or title = "%hello world%"

将被解释为

Select

*

from tablename

where

(display = 1)

or (

(display = 2)

and (content like "%hello world%")

)

or (tags like "%hello world%")

or (title = "%hello world%")

如有疑问,请使用括号将您的意图弄清楚。虽然MySQL页面上的信息很有帮助,但如果再次访问该查询,可能不会立即显而易见。

您可能会考虑以下内容。请注意,我已将更改title = "%hello world%"为title like "%hello

world%",因为它更适合您所描述的目标。

Select

*

from tablename

where

(

(display = 1)

or (display = 2)

) and (

(content like "%hello world%")

or (tags like "%hello world%")

or (title like "%hello world%")

)

2020-05-17

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值