阅读指南:
本文章讲述了对于数据库的运算符,如果读者感兴趣,后续我们会更新高级的操作在我们的对于数据库教程的合集中,大家可以来很我们一起学习讨论
合集链接:
数据库详细基础教程
运算符
1.算数运算符
算数运算表达式可以出现在 SELECT 列位置、WHERE 条件后
运算符 | 描述 |
---|---|
%,MOD | 取模运算 |
* | 乘法 |
+ | 加法 |
- | 减法 |
、 | 浮点除法 |
DIV | 整数除法 |
示例:
SELECT 100, 100 + 0, 100 - 0, 100 + 50, 100 + 50 -30, 100 + 35.5, 100 - 35.5 ,
3*5, 3*5.0, 3/5 , 100/0,5 DIV 2, -5 DIV 2 , 100 /(1-1);
结果:
示例2:
# 查询薪资与奖金和大于20000的员工
SELECT * FROM t_employee WHERE salary + IFNULL(commission_pct, 0) * salary > 20000;
# 查询员工编号是偶数的员工信息
SELECT * FROM t_employee WHERE eid % 2 = 0;
2.逻辑运算符
逻辑运算符 | 描述 |
---|---|
AND,&& | 逻辑且 |
NOT,! | 否定值 |
OR,|| | 逻辑或 |
XOR | 逻辑异或 |
3.比较运算符
示例:
# 查询员工编号为1的员工信息。
SELECT * FROM t_employee WHERE eid = 1;
SELECT * FROM t_employee WHERE eid = '1';
# 查询薪资大于5000的员工信息。
SELECT * FROM t_employee WHERE salary > 5000;
# 查询有奖金的员工信息。
SELECT * FROM t_employee WHERE commission_pct IS NOT NULL;
SELECT * FROM t_employee WHERE commission_pct <=> NULL;
# 查询出生日期在 '1990-01-01' 和 '1995-01-01' 之间的员工信息。
SELECT * FROM t_employee WHERE birthday BETWEEN '1990-01-01' AND '1995-01-01';
# 查询出生日期不在 '1980-01-01' 和 '2000-01-01' 之间的员工信息。
SELECT * FROM t_employee WHERE birthday NOT BETWEEN '1980-01-01' AND '2000-01-01';
# 查询性别为女性的员工信息 。
SELECT * FROM t_employee WHERE gender = '女';
# 查询性别不是'男'的员工信息。
SELECT * FROM t_employee WHERE gender <> '男';
SELECT * FROM t_employee WHERE gender != '男';
# 查询手机号码以 '138' 开头的员工信息。
SELECT * FROM t_employee WHERE tel LIKE '138________';
SELECT * FROM t_employee WHERE tel LIKE '137%';
# 查询邮箱以 '@company.com' 结尾的员工信息。
SELECT * FROM t_employee WHERE email LIKE '%@atguigu.com'; # 通配符
# 查询地址为NULL的员工信息。
SELECT * FROM t_employee WHERE address IS NULL;
# 查询工作地点在 '北京'、'上海' 或 '深圳' 的员工信息。
SELECT * FROM t_employee WHERE work_place IN ('北京','上海' , '深圳' );
# 查询员工姓名以 '黄' 开头的员工信息。
SELECT * FROM t_employee WHERE ename LIKE "黄%";