zoukankan      html  css  js  c++  java
  • 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.运算符的优先级:    

            

  • 相关阅读:
    Lombok——一款Java构建工具,“懒人”必备!!(idea版)
    HTML——列表标签
    HTML——超链接<a>
    python 数据写入json文件时中文显示Unicode编码问题
    Spring——Bean的作用域
    过程与函数
    异常错误处理
    游标变量的使用
    =>符号的意义
    游标的使用
  • 原文地址:https://www.cnblogs.com/EveningWind/p/9458114.html
Copyright © 2011-2022 走看看