MySQL支持许多整理的运算符,其中主要包括如下几类:算数运算符、比较运算符、逻辑运算符、位运算符。html
运算符 | 做用 |
---|---|
+ | 加法 |
- | 减法 |
* | 乘法 |
/ 或 DIV | 除法 |
% 或 MOD | 取余 |
示例:mysql
//数字之间和数字与NULL之间的运算 select 1 + 1, 1 + null, 10 - 1, 10 - null, 10 * 2, 10 * null, 10 / 1, 10 / 0, 10 / null, 10 % 3, 10 % null;
运算结果sql
与NULL作运算结果都为NULL,除法和求模计算除数不能够为0,不然返回NULL。安全
运算符 | 做用 |
---|---|
= | 等于 |
<> 或 ! | 不等于 |
<==> | NULL安全的等于 |
< | 小于 |
<= | 小于等于 |
> | 大于 |
>= | 大于等于 |
BETWEEN | 计算指定范围 |
IN | 存在某集合 |
IS NULL 和 IS NOT NULL | 是否为NULL |
示例:spa
//各类运算符 之间但比较 和 与 NULL值比较的结果 SELECT 1 = 0, 1 = 1, 'a' = 'a', 'a' = 65, 0 = null, 1 > null, 1 > 10, 1 > 0, 1 < null, 1 IN (1, 2, 3), null IN (1, 2, 3), null IN (1, 2, 3, 0), null IN (1, 2, 3, 0, null), 1 IS NULL, null IS NULL, 10 BETWEEN 10 AND 20, 10 BETWEEN null AND 20, null BETWEEN 10 AND 20, null BETWEEN 0 AND 20
结果code
与NULL作运算的时候反悔结果为NULL,同时NULL在作IN运算的时候也会返回NULL,使用 字符 与 数字进行比较的时候 返回结果 0 可是会触发一个warnning;regexp
运算符号 | 做用 |
---|---|
NOT 或 ! | 逻辑非 |
AND | 逻辑与 |
OR | 逻辑或 |
XOR | 逻辑异或 |
示例htm
select 1 and 1, 1 and 0, 0 and 0, 1 and 1, 1 and null, null and 1, 0 and null, null and 0, null and null, 1 or 0, 0 or 1, 0 or 0, 1 or 1, null or 0, null or 1, null xor 1, null xor 0, 1 xor 1, 1 xor 0, NOT NULL, NOT 1, NOT 0\G
结果ci
AND与null进行运算返回结果为null,OR与null运算除非另外一个为非0,不然为null,NOT与null计算结果也为nullget
运算符号 | 做用 |
---|---|
& | 按位与 |
| | 按位或 |
^ | 按位异或 |
! | 取反 |
<< | 左移 |
>> | 右移 |
MySQL的位运算与C中的位运算同样,因此不作记录。
运算符 | 做用 |
---|---|
LIKE | 进行模糊匹配 |
REGEXP 或 RLIKE | 进行正则匹配 |
关于正则匹配相关的能够查看MySQL官方手册,传送门:MySQL Regular Expressions