赞
踩
MySQL支持多种类型的运算符,这些运算符可以用来连接表达式的项。这些类型主要包括算术运算符、比较运算符、逻辑运算符和位运算符。
一、算术运算符(加、减、乘、除和模运算)
运算符 | 作用 |
---|---|
+ | 加法 |
- | 减法 |
* | 乘法 |
/ 或 DIV | 除法,/返回商,带小数点的,DIV返回整除商(例如:10/4=2.5 ;10 DIV 4 =2) |
% 或 MOD | 取余,返回余数 |
在除法运算和模运算中,如果除数为0,将是非法除数,返回结果为NULL。
- 1.加
- select 1+2 ; --返回3
-
- 2.减
- select 1-2 ; --返回-1
-
- 3.乘
- select 1*2 ; --返回2
-
- 4.除
- select 1/2 ; --返回0.5
-
- 5.整除
- select 10 div 4 ; --返回2
-
- 6.取模
- select 10 % 4 ; --返回2
- select 10 mod 4 ; --返回2

二、比较运算符
SELECT 语句中的条件语句经常要使用比较运算符。通过这些比较运算符,可以判断表中的哪些记录是符合条件的。比较结果为真,则返回 1,为假则返回 0,比较结果不确定则返回 NULL。
符号 | 描述 | 备注 |
---|---|---|
= | 等于 | |
<>, != | 不等于 | |
> | 大于 | |
< | 小于 | |
<= | 小于等于 | |
>= | 大于等于 | |
BETWEEN | 在两值之间 | >=min&&<=max |
NOT BETWEEN | 不在两值之间 | |
IN | 在集合中 | |
NOT IN | 不在集合中 | |
<=> | 严格比较两个NULL值是否相等 | 两个操作码均为NULL时,其所得值为1; 而当一个操作码为NULL时,其所得值为0 |
LIKE | 模糊匹配 | |
REGEXP 或 RLIKE | 正则式匹配 | |
IS NULL | 为空 | |
IS NOT NULL | 不为空 |
- 1.等于=
- select 2=3; -- 返回 0
- select null=null; -- 返回null
-
- 2.不等于<>或!=
- select 2!=3; -- 返回 1,等效于:
- select 2<>3; -- 返回 1
-
- 3.安全等于<=>:当两个操作码均为 NULL 时,其所得值为 1 ;反之,其所得值为 0。
- select null<=>null; -- 返回1
- select null<=>0; -- 返回0
- select 2<=>3; -- 返回0
- 区别于=: select null=null; 返回null
-
- 4.小于<、小于等于<=、大于>、大于等于>=
- select 2<3; --返回1
- select 2<=3; --返回1
- select 2>3; --返回0
- select 2>=3; --返回0
-
- 5.存在于指定范围 between
- select 5 between 1 and 10; -- 返回1
-
- 6.存在于指定集合 in | 不存在于指定集合 not in
- select 5 in (1,2,3,4,5); -- 返回1
- select 5 not in (1,2,3,4); -- 返回1
-
- 7.判断是不是null: is null 及 is not null
- select null is NULL; -- 返回1
- select 'a' is NULL; -- 返回0
- select null IS NOT NULL; -- 返回0
- select 'a' IS NOT NULL ; -- 返回1
-
- 8.模糊匹配 like
- select '12345' like '12%'; -- 返回1
- select '12345' like '12_'; -- 返回0
-
- 9.正则表达式
- select 'beijing' REGEXP 'jing'; -- 返回1
- select 'beijing' REGEXP 'xi'; -- 返回0
-

三、逻辑运算符
运算符号 | 作用 |
---|---|
NOT 或 ! | 逻辑非 |
AND | 逻辑与 |
OR | 逻辑或 |
XOR | 逻辑异或 |
- 1.与 and
- select 2 and 0; -- 返回0
-
- 2.或 or
- select null or 1 ; -- 返回1
-
- 3.非 not、!
- select not 1; -- 返回0
- select !0; -- 返回1
-
- 4.异或xor
- select 1 xor 1; -- 返回 0
- select 1 xor 0; -- 返回 1
- select 1 xor null; -- 返回 1
四、位运算
运算符号 | 作用 |
---|---|
& | 按位与 |
| | 按位或 |
^ | 按位异或 |
! | 取反 |
<< | 左移 |
>> | 右移 |
- 1.按位与 &
- select 3&5; -- 返回1
-
- 2.按位或 |
- select 3|5; -- 返回7
-
- 3.按位异或 ^
- select 3^5; -- 返回6
-
- 4.按位取反 ~
- select ~18446744073709551612; -- 返回3
- select ~3; -- 返回4
-
- 5.按位右移 >>
- select 3>>1; -- 返回1
-
- 6.按位左移 <<
- select 3<<1; -- 返回6

五、运算符的优先级
最低优先级为: :=。
最高优先级为: !、BINARY、 COLLATE。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。