MySQL笔记 —SQL运算符


Posted in MySQL onJanuary 18, 2022

1.算术运算符

+ - * /或DIV %或MOD

  /或DIV

select 100/5,100 DIV 5 from dual;

结果:

100/5 100 DIV 5
20.0000 20

注意:/结果是浮点型有结果20.0000,但是DIV结果是20

取模运算%MOD

select 10 % 2,10 % 3,12 MOD -4 from dual;

结果:

10 % 2 10 % 3 12 MOD -4
0 1 0

2.比较运算符

< > = <=> <>或!= <= >=
小于 大于 等于 安全等于 不等于 小于等于 大于等于

<=>第一次学到比较特殊

select null <=> null,null = null,null != null from dual;

结果:

null<=>null null=null null!=null
1 null null

因此可以得出<=>就是为NULL而生,其余只要运算中有null结果为null

具体关键字

MySQL笔记 —SQL运算符

IS NULL 等于<=>NULL 运算及结果一样

ISNULL IS NULL也一样,但用法有点不一样

select salary from empty where salary is null;
select salary from empty where isnull(salary);
select salary from empty where salary <=> null;

大家在运用过程中最好最好用is null is not null

LEAST()min(),CREATEST()max() 一样,还是建议用min与max

BETWEEN  条件1 AND 条件2  (查询条件1到条件2范围数据,包含边界。条件1是下限,条件2是上限)

select * from emp
where salary between 3000 and 5000;

在emp表查询工资在3000到5000的员工信息

innot in

course表查询选修了(name)数据库,线性代数,概率论的同学信息

select * 
from course
where name in('数据库','线性代数','概率论');
#where name='数据库' or name='线性代数' or name='概率论';

很明显in对多个数据选择更加方便了,如果查不在里面的用not in()即可

like模糊查询 

stu表查询了(name)性刘的同学信息

select *
from stu
where name like'刘%';

在stu表查询了(name)名字包含为刘的同学信息

select *
from stu
where name like'%刘%';

stu表查询了(name)名字包含刘也包含壮的同学信息

select *
from stu
where name like'%刘%' and name like'%壮%';

在stu表查询了(name)名字第二个字为刘的同学信息

select *
from stu
where name like'_刘%';

u表查询了(name)名字第二个为_且第三个字为刘的同学信息(需要使用转移字符\)

select *
from stu
where name like'_\_刘%';

不使用转移字符需要表中用escape(&不是必须的可以用任意字符)

select *
from stu
where name like'_&_刘%' escape '&';

正则表达式:(了解)

REGEXP运算符用来匹配字符串,语法格式为:expr REGEXP 匹配条件。如果expr满足匹配条件,返回1;如果不满足,则返回0。若expr或匹配条件任意一个为NULL,则结果为NULL。

REGEXP运算符在进行匹配时,常用的有下面几种通配符:

  • (1)‘^’匹配以该字符后面的字符开头的字符串。
  • (2)‘$’匹配以该字符前面的字符结尾的字符串。
  • (3)‘.’匹配任何一个单字符。
  • (4)“[...]”匹配在方括号内的任何字符。例如,“[abc]”匹配“a”或“b”或“c”。为了命名字符的范围,使用一个‘-’。“[a-z]”匹配任何字母,而“[0-9]”匹配任何数字。(3.4自我理解跟like差不多)
  • (5)‘*’匹配零个或多个在它前面的字符。例如,“x*”匹配任何数量的‘x’字符,“[0-9]*”匹配任何数量的数字,而“*”匹配任何数量的任何字符。

3.逻辑运算符

NOT或! AND或&& OR或|| XOR
逻辑非 逻辑与 逻辑或 逻辑异或

注意:

OR可以和AND一起使用,但是在使用时要注意两者的优先级,由于AND的优先级高于OR,因此先对AND两边的操作数进行操作,再与OR中的操作数结合。

主要XOR有点陌生,有且只能取一方。

4.位运算符

& | ^ ~ >> <<
换位与(位AND) 换位或(位OR) 换位异或(位XOR) 按位取反 按位右移 按位左移

了解即可。

到此这篇关于MySQL笔记 —SQL运算符的文章就介绍到这了,更多相关 SQL运算符内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
如何自己动手写SQL执行引擎
Jun 02 MySQL
mysql 如何获取两个集合的交集/差集/并集
Jun 08 MySQL
MySQL中存储时间的最佳实践指南
Jul 01 MySQL
mysql的数据压缩性能对比详情
Nov 07 MySQL
MySQL优化常用的19种有效方法(推荐!)
Mar 17 MySQL
mysql中数据库覆盖导入的几种方式总结
Mar 25 MySQL
Nebula Graph解决风控业务实践
Mar 31 MySQL
分析MySQL优化 index merge 后引起的死锁
Apr 19 MySQL
mysql 8.0.27 绿色解压版安装教程及配置方法
Apr 20 MySQL
MYSQL中文乱码问题的解决方案
Jun 14 MySQL
mysql数据库如何转移到oracle
Dec 24 MySQL
Mysql中一千万条数据怎么快速查询
Dec 06 #MySQL
Mysql中有关Datetime和Timestamp的使用总结
Dec 06 #MySQL
详解MySQL中timestamp和datetime时区问题导致做DTS遇到的坑
Dec 06 #MySQL
mysql中整数数据类型tinyint详解
Dec 06 #MySQL
SQL注入详解及防范方法
Dec 06 #MySQL
防止web项目中的SQL注入
Dec 06 #MySQL
mysql创建存储过程及函数详解
Dec 04 #MySQL
You might like
PHP VS ASP
2006/10/09 PHP
PHP set_time_limit(0)长连接的实现分析
2010/03/02 PHP
让PHP开发者事半功倍的十大技巧小结
2010/04/20 PHP
php和js如何通过json互相传递数据相关问题探讨
2013/02/26 PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
2013/08/10 PHP
PHP实现通过get方式识别用户发送邮件的方法
2015/07/16 PHP
PHP常量DIRECTORY_SEPARATOR原理及用法解析
2020/11/10 PHP
js获取url参数的使用扩展实例
2007/12/29 Javascript
js实现网页多级级联菜单代码
2015/08/20 Javascript
详解Bootstrap四种图片样式
2016/01/04 Javascript
js根据手机客户端浏览器类型,判断跳转官网/手机网站多个实例代码
2016/04/30 Javascript
Bootstrap学习笔记之css组件(3)
2016/06/07 Javascript
基于zepto.js简单实现上传图片
2016/06/21 Javascript
bootstrap datepicker 与bootstrapValidator同时使用时选择日期后无法正常触发校验的解决思路
2016/09/28 Javascript
JS+canvas动态绘制饼图的方法示例
2017/09/12 Javascript
js实现QQ面板拖拽效果(慕课网DOM事件探秘)(全)
2017/09/19 Javascript
浅谈Vue-cli 命令行工具分析
2017/11/22 Javascript
vue.js添加一些触摸事件以及安装fastclick的实例
2018/08/28 Javascript
jQuery AJAX与jQuery事件的分析讲解
2019/02/18 jQuery
基于layui的table插件进行复选框联动功能的实现方法
2019/09/19 Javascript
jQuery轮播图功能制作方法详解
2019/12/03 jQuery
python基础教程之popen函数操作其它程序的输入和输出示例
2014/02/10 Python
初探TensorFLow从文件读取图片的四种方式
2018/02/06 Python
python 美化输出信息的实例
2018/10/15 Python
33个Python爬虫项目实战(推荐)
2019/07/08 Python
原生python实现knn分类算法
2019/10/24 Python
python爬虫爬取监控教务系统的思路详解
2020/01/08 Python
基于tensorflow for循环 while循环案例
2020/06/30 Python
使用Python爬取Json数据的示例代码
2020/12/07 Python
Prototype是怎么扩展DOM的
2014/10/01 面试题
小学家长评语大全
2014/04/16 职场文书
党员干部四风问题整改措施思想汇报
2014/10/12 职场文书
MySQL数据迁移相关总结
2021/04/29 MySQL
python 如何在list中找Topk的数值和索引
2021/05/20 Python
使用python+pygame开发消消乐游戏附完整源码
2021/06/10 Python
vue-cli3.x配置全局的scss的时候报错问题及解决
2022/04/30 Vue.js