MySQL详解之运算符

MySQL之运算符

        运算符是用来连接表达式中各个操作数据的符号,其作用是指明对操作数所进行的运算。MySQL支持运算符的使用,通过运算符可以更加灵活的操作表中的数据。MySQL主要支持算数运算符、比较运算符、逻辑运算符和位运算符。

1、算数运算符:加法+    减法-    乘法*    除法/    取余%
注意:除数非法时,返回结果为NULL。
MySQL详解之运算符_第1张图片
2、比较运算符:左右操作数进行比较,结果为真时返回1,为假返回0,不确定返回NULL。

运算符 意义 运算符 意义
= 等于(涉及NULL值的比较都会返回NULL) <>或者!= 不等于
<=> 等于(涉及NULL值的比较都会正确比较) between A and B 在A和B之间,包含A、B
< 小于 <= 小于等于
> 大于 >= 大于等于
in(v1,v2,…) 存在于集合(v1,v2,…)中 is null 为null值
is not null 不为null值 like 通配匹配符
regexp或者rlike 正则表达式匹配

MySQL详解之运算符_第2张图片
MySQL详解之运算符_第3张图片
MySQL详解之运算符_第4张图片
MySQL详解之运算符_第5张图片
set @a = '找';命令是声明一个变量a。
MySQL详解之运算符_第6张图片
3、逻辑运算符:1>not或者!:逻辑非,返回的结果和操作数结果正好相反;2>and或者&:逻辑与,仅当所有操作数非0的时候返回1;3>or或者||:逻辑或,当操作数有一个为1时返回1;4>xor:逻辑异或,当操作数逻辑值相等时返回0,否则返回1。
MySQL详解之运算符_第7张图片
4、位运算符:将给定的操作数转换为二进制后,对各个操作数的每一位都进行指定的逻辑运算,将得到的二进制结果转换为十进制数后就是位运算的结果。

运算符 意义 运算符 意义
& 位与 | 位或
^ 位异或 ~ 位取反
>> 位右移 << 位左移

MySQL详解之运算符_第8张图片
~1:对1做位取反,由于MySQL中常量数字默认是用8字节来表示的,8字节就是64位,常量1的二进制表示为前面63个0,最后一位为1,位取反之后就变成了前面63个1,最后一位为0,转换为十进制就是18446744073709551614。将十进制转换为二进制的一串之后,右移是舍弃低位,高位补0,而左移是低位补0。

你可能感兴趣的:(数据库系统)