MySQL运算符

算术运算符

/或div   取余%或mod

select 1+2;

select 4/2;  或  select 4 div 2;

select 10%4;  或  select 10 mod 4;

比较运算符

为真返回1, 为假返回0, 不确定返回null

=等于

<>,!=不等于

>大于

<小于

>=大于等于

<=小于等于

between在两值之间,相当于>=min&&<=max

例:select 5 between 1 and 10;

not between不在两值之间

in在集合中

例:select 5 in(1,2,3,4,5);

not in不在集合中

<=>安全等于(1=null和null=null返回null,1<=>null返回0,null<=>null返回1)

like模糊匹配

例:select ‘12345’ like ‘12%’;返回1      select ‘12345’ like ‘12_’;返回0

regexp或rlike正则式匹配

例:select ‘beijing’ regexp ‘jing’;返回1       select ‘beijing’ regexp ‘xi’;返回0

is null为空

例:select null is null;  返回1

判断值是否为空时不能用=,应该用is null

is not null不为空

逻辑运算符

not,!  逻辑非

and,&&  逻辑与

or,||   逻辑或

xor    逻辑异或

位运算符

&与

对应的二进制位都为 1 ,则该位的运算结果为 1 ,否则为 0

|  或

对应的二进制位有一个或两个为 1 ,则该位的运算结果为 1 ,否则为 0

^  异或

对应的二进制位不相同时,结果为 1 ,否则为 0

~   取反

将对应的二进制数逐位反转,即 1 取反后变 0 , 0 取反后变 1

<<左移

使指定的二进制位都左移指定的位数,左移指定位之后,左边高位的数值将被移出并丢弃,右边低位空出的位置用 0 补齐

>>右移

使指定的二进制位都右移指定的位数,右移指定位之后,右边低位的数值将被移出并丢弃,左边高位空出的职位用 0 补齐

分配运算符 :=

select @a := 1;

注:一个@代表自定义变量,两个@代表系统变量,:=指赋值,在set语句中=也可以代表赋值。

原文地址:https://www.cnblogs.com/1016391912pm/p/11730174.html