MySql中的运算符

  MySQL的类型主要包括:算术运算符,比较运算符,逻辑运算符和位运算符。

  1.算术运算符:加、减、乘、除和模运算。他们是最常用和最简单的一类运算符。

    “+” 用于获得一个或多个值的和。

    “-”用于从一个值中减去另一个值。

    “*”使数字相乘,得到两个或多个值的乘积。

    “/”用一个值除以另一个值得到商。

    “%”用一个值除以另外一个值得到的余数。

    模运算:使用MOD(a,b)函数与a%b效果一样。

  2.比较运算符:当使用select进行查询时,MySQL允许用户对表达式的左边操作数和右边操作数进行比较,比较结果为真,返回1,为假则返回0,比较结果              不确定则返回NULL。  

    “=” 用于比较运算符两侧的操作数是否相等,如果两侧操作数相等,则返回值为1,否则为0,NULL不能用于“=”比较。

    “<>” 和“=” 相反,如果两侧操作数不等,则返回1,否则返回0 ,NULL不能使用"<>"来比较。

    “<=>” 和“=”  类似 ,两侧操作数相同时返回1 ,不同之处在于可以用来比较NULL。

    “<”  当左侧操作数小于右侧操作数时返回1 ,否则返回 0 。

    “<=” 当左侧操作数小于等于右侧操作数时返回1 ,否则返回 0 。

    “>”   当左侧操作数大于右侧操作数时返回1 ,否则返回0.

    “>=”  当左侧操作数大于等于右侧操作数时返回1 ,否则返回0.

    “BEWEEN” 使用格式为 “a BETWEEN  min AND max ” 当a 大于等于min 并且小于等于max时,则返回值为1 ,否则为 0 ,当操作数的类型相同时,表达式等于 (a>= min AND a<= max) ,当操作数类型不同时,比较会遵循类型转换原则进行转换后,在进行比较。

    “in” 使用格式为“a in (value1,value2.。。)” a的值存在于列表中则返回值为1  否则为0.

    “IS NULL” 使用格式为“a IS NULL” 当 a的值为null时,返回值为1 ,否则为 0

    “IS NOT NULL” 使用格式为“a IS NOT NULL” 和“IS NULL” 相反,当a 的值不为NULL,则返回1, 否则返回0。

    “LIKE” 使用格式为 “a LIKE %123%” 当a中含有“123”时则返回1 ,否则返回0.

    “REGEXP” 使用格式:“a REGEXP str” 当a字符串中含有srt相匹配的字符串时,则返回值为1 ,否则返回0

  3.逻辑运算符也被称为布尔运算符,用来确认表达式的真和假。MySQL支持4中逻辑运算符。

    “NOT或!” 表示逻辑非,返回和操作数相反的结果:当操作数为0,则返回1,为1,则返回0.有一点除外,就是 “NOT NULL” 返回值为NULl

    “AND 或 &&” 表示逻辑与,当所有操作数均为非零值并且不为null时,计算所得结果为1,当一个或多个操作数为0时,那所得结果就是0,操作数中任何一个操作数为null则返回结果为:NULL。

    “OR或 ||”表示逻辑或,当连个操作数均为非null时,如果有任意一个操作数为非零值,则结果为1,否则为0,当操作数有一个为null时,如另一个操作数为非0值,则结果为1,否则为null,如果两个操作数均为null,那么所得结果也为null。

    “XOR” 表示逻辑异或,当任意一个操作数为null时,返回值为null,对于非null的操作数,如果两个的逻辑真假值相异,则返回结果为1,否则返回为0.

  4.位运算符是见给定的操作数 转化为二进制后,对各个操作数每一位都进行指定的逻辑运算, 得到二进制结果转换为十进制数后就是位运算的结果。

    “&” 表示 位与 对多个操作数的二进制位做逻辑和操作,例如“2&3” 因为2二进制表示为 10,3是11,所以10&11的结果为10,十进制数字还是2。

    “|” 表示 位或  对多个操作数的二进制做逻辑或操作,例如“2|3” 结果应该是10|11,结果还是11,应该是3。

    “^” 表示 位异或  对操作数进行位异或操作,10^11的结果是01,结果应该是1。

    “~” 表示 位取反 对操作数的二进制做NOT操作。

    “>>” 表示  位右移 对左操作数向右移动右操作数指定的位数。

    “<<” 表示 位左移 对左操作数向左移动右操作指定的位数。

  5.运算符的优先级:    

        

原文地址:https://www.cnblogs.com/EveningWind/p/9458114.html