算数运算符:
算术运算符 | 说明 |
+ | 加法运算 |
- | 减法运算 |
* | 乘法运算 |
/ 或 DIV | 除法运算,返回商 |
% 或 MOD | 求余运算,返回余数 |
比较运算符:
比较运算符 | 说明 |
= | 等于 |
< 和 <= | 小于和小于等于 |
> 和 >= | 大于和大于等于 |
<=> | 安全的等于,两个操作码均为NULL时,其所得值为1;而当一个操作码为NULL时,其所得值为0 |
<> 或!= | 不等于 |
IS NULL 或 ISNULL | 判断一个值是否为 NULL |
IS NOT NULL | 判断一个值是否不为 NULL |
LEAST | 当有两个或多个参数时,返回最小值 |
GREATEST | 当有两个或多个参数时,返回最大值 |
BETWEEN AND | 判断一个值是否落在两个值之间 |
IN | 判断一个值是IN列表中的任意一个值 |
NOT IN | 判断一个值不是IN列表中的任意一个值 |
LIKE | 通配符匹配 |
REGEXP | 正则表达式匹配 |
逻辑运算符:
逻辑运算符 | 说明 |
NOT 或者 ! | 逻辑非 |
AND 或者 && | 逻辑与 |
OR 或者 || | 逻辑或 |
XOR | 逻辑异或 |
位运算符:
位运算符 | 说明 |
| | 按位或 |
& | 按位与 |
^ | 按位异或 |
<< | 按位左移 |
>> | 按位右移 |
~ | 按位取反,反转所有比特 |
运算符操作:算数运算符
-- 查询商品价格是200或800的所有商品
select * from product where price = 200 or price = 800;
select * from product where price in (200,800);
-- 查询含有‘裤'字的所有商品
select * from product where p_name like '%裤%'; # %用来匹配任意字符
-- 查询以'海'开头的所有商品
select * from product where p_name like '海%';
-- 查询第二个字为'蔻'的所有商品
select * from product where p_name like '_蔻%'; # _用来匹配单个字符
-- 查询category为null的商品
select * from product where category is null;
-- 查询category不为null分类的商品
select * from product where category is not null;
-- 使用least求最小值
select least(0,6,8) as mix;
select least(5,66,null) as mix;
select min(price) from product; -- 列最小值
-- 使用greatest求最大值
select greatest(6,8,4) as max;
select greatest(6,2,null) max;
select max(price) from product; -- 列最大值
-- 无论是求最小值还是最大值,只要有null存在,都会直接输出null
位运算符:
select 3&5; -- 位与
select 3|5; -- 位或
select 3^5; -- 位异或
select 3>>1; -- 位左移
select 3<<1; -- 位右移
select ~3; -- 位取反