MySQL--运算符

1.算数运算符

  • +,
  • -,
  • *
  • /, DIV,
  • %, MOD
  • 在除法和模运算中,如果除数为0,将是非法除数,返回结果为NULL

2.比较运算符

  • =
  • <>, !=
  • <=>  //NULL的安全等于(NULL-safe)
  • <
  • <=
  • >
  • >=
  • BETWEEN  //x BETWEEN a AND b -> a <= x <= b
  • IN
  • IS NULL
  • IS NOT NULL
  • LIKE
  • REGEXP, RLIKE  //string REGEXP string_pat 当string字符串中含有string_pat相匹配的字符串时返回1
  • MYSQL允许用户对表达式的左边操作数和右边操作数进行比较,比较结果为真则返回1,为假则返回0,比较结果不确定则返回NULL
  • 比较运算符可以用于比较数字,字符串和表达式。数字作为浮点数比较,而字符串已不区分大小写的方式进行比较。
  • NULL不能用 = 比较。
  • <=>和 = 类似,在操作数相等时为1,不同之处在于及时操作的值为NULL也可以正确比较。

3.逻辑运算符

  • NOT, !

      NOT NULL返回值为NULL

  • AND, &&

      当所有操作数均为非零值并且不为NULL时,计算所得结果为1,当1个或多个操作数为0时,所得结果为0,操作数中有任何一个为NULL则返回值为NULL

  • OR, ||

      当两个操作数均为非NULL值时,如果任意一个操作数为非零值,则结果为1,否则结果为0。当有一个操作数为NULL时,如果另一个操作数为非零值,则结果为1,否则为NULL。两个操作数均为NULL,则所得结果为NULL。

  • XOR  //异或

      当任意一个操作数为NULL时,返回值为NULL,对于非NULL的操作数,如果两个逻辑真假值相异,则返回结果1,否则返回0

 

4.位运算符

  • &
  • |
  • ^
  • ~
  • >>
  • <<

5.运算符的优先级

  • 从低到高排序
  • :=
  • ||, OR, XOR
  • &&, AND
  • NOT
  • BETWEEN, CASE, WHEN, THEN, ELSE
  • =, <=>, >=, >, <=, <, <>, !=, IS, LIKE, REGEXP, IN
  • |
  • &
  • <<, >>
  • -, +
  • *, /, DIV, %, MOD
  • ^
  • -, ~
  • !
posted @ 2017-03-21 16:44  MicroCat  阅读(2647)  评论(0编辑  收藏  举报