mysql常用运算符
mysql常用运算符
- 一、去重和空值
- 1.distinct
- 2.null参与运算
- 3.用ifnull函数解决问题
- 二、比较运算符
- 三、dual伪表和数值运算
- 1.常规运算
- 2.比较运算符
- 3.<=>安全相等
- 四、常用正则相关的比较运算符
- 1.基本运算符
- 2.模糊查询
- 3.正则表达式
- 五、逻辑运算符
- 六、位运算
- 总结
一、去重和空值
学习运算符之前我们先讨论一下去重和空值的问题:
这是我们要操作的表


select DEPARTMENT_ID from employees order by EMPLOYEE_ID ;
查看部门id,发现很多都是一个重复的

1.distinct
select distinct DEPARTMENT_ID from employees order by DEPARTMENT_ID;

2.null参与运算
select employee_id , salary "月工资" , salary * ( 1 + commission_pct ) * 12 "年工资" from employees;
运算中有一个null,结果为null

3.用ifnull函数解决问题
select employee_id , salary “月工资” , salary * ( 1 + IFNULL(commission_pct,0) ) * 12 “年工资” , commission_pct from employees;
if null函数本质是将null变为0参与运算。
二、比较运算符
select employee_id , salary from employees where salary < 2400;

三、dual伪表和数值运算
1.常规运算

浮点型转化

字符串隐式转化
字符串和null
字符串隐式转化成0(不包含数字)

除法0值的问题
select 100/0.0,100 div 10 ,100 div 0 from dual;

取余0值问题
select 100 % 3,100%0 from dual;

2.比较运算符
select 1=2,1!=2,1='1',1='a' from dual;

select 'a' = 'a','a'='ab','a'='b' from dual;

空值参与比较运算的问题
select last_name,salary from employees where COMMISSION_PCT = NULL;

3.<=>安全相等
select last_name,salary from employees where COMMISSION_PCT <=> NULL;
除了<=>之外与null相运算都是null
不相等

四、常用正则相关的比较运算符

1.基本运算符
is null
select last_name,salary from employees where COMMISSION_PCT is NULL;#
not 取反
select last_name,salary from employees where NOT (COMMISSION_PCT <=> NULL);

等价于is not null
select last_name,salary from employees where (COMMISSION_PCT IS NOT NULL);

least()和greatest()
select least('a','b','c','e'),greatest('a','b','c','e') from dual;

取两列中最长的字符串和最短的字符串
select least( first_name, last_name ),greatest(first_name, last_name) from employees;

betweent … and 区间
注意区间不能为空,不然输出会有问题
select * from employees where salary between 6000 and 8000 ;

等价于
select * from employees where salary > 6000 and salary < 8000 ;

in和not in
select * from employees where department_id in (10,20,30,40);
等价于
select * from employees where department_id = 10 or department_id = 20 or department_id = 30 or department_id = 40;

not in
select * from employees where department_id not in (10,20,30,40);

2.模糊查询
%:代表不确定个数的字符
查询包含字符’a’的员工信息
查询字符’a’开头的员工信息

查询包含字符’a’和’e’的员工信息
写法1:

写法2:
select last_name from employees where last_name like '%a%e%' or last_name like '%e%a%' ;
_:占位符一个不确定的字符
select last_name from employees where last_name like '_a%' ;

转义字符
\
查询JOB_ID的第三个字符是_且第四个是a的JOB_ID:
select JOB_ID from employees where JOB_ID like "__\_a%" ;

其他字符做转义,需要告诉系统
$做转义字符:
select JOB_ID from employees where JOB_ID like "__$_a%" escape '$' ;

3.正则表达式
regexp 和 rlike

select "shkstart" regexp "^s","shkstart" regexp "t$","shkstart" regexp "hk" , "shkstart" regexp "ht"from dual;

select "guigui" regexp "gu.gu","guigui" regexp "[gu]" from dual;

五、逻辑运算符
or:
select last_name from employees where last_name like '%a%e%' or last_name like '%e%a%' ;
and:
select last_name,salary,department_id from employees where department_id = 50 and salary > 6000;


六、位运算



select 4<<1,8>>1 from dual;

总结
常见运算符基本就是这些了,里面有使用案例,希望大家后面多多练习,毕竟mysql除了懂原理外大量的练习才是王道。
可以点个小👍吗
相关文章:
mysql常用运算符
mysql常用运算符一、去重和空值1.distinct2.null参与运算3.用ifnull函数解决问题二、比较运算符三、dual伪表和数值运算1.常规运算2.比较运算符3.<>安全相等四、常用正则相关的比较运算符1.基本运算符2.模糊查询3.正则表达式五、逻辑运算符六、位运算总结一、去重和空值 …...
PyTorch 深度学习框架:优雅而简洁的代码实现
PyTorch 是由 Facebook 发布的深度学习框架,旨在为研究人员和工程师提供快速、灵活和简单的实验平台。与其他框架相比,PyTorch 具有简洁的 API 和灵活的动态计算图,使得构建和训练深度神经网络变得更加优雅和简洁。本文将介绍 PyTorch 的基本…...
【SpringMVC】请求重定向和转发
forward:表示转发 处理器方法返回ModelAndView,实现转发forward 语法: setViewName("forward:视图文件完整路径") forward特点: 不和视图解析器一同使用,就当项目中没有视图解析器redirect:表示重定向 处理…...
Vue中@click的常见修饰符
在 Vue 的click事件中,可以使用以下修饰符: .stop:阻止事件继续传播。.prevent:阻止默认事件。.capture:使用事件捕获模式。.self:只当事件是从侦听器绑定的元素本身触发时才触发回调。.once:只…...
软件测试面试复盘:技术面没有难倒我,hr面被虐的体无完肤
一般提到面试,肯定都会想问一下面试结果,我就大概的说一下面试结果,哈哈,其实不太想说,因为挺惨的,并没有像很多大佬一样 ”已拿字节阿里腾讯各大厂offer”,但是毕竟是自己的经历,无…...
vue实现鼠标移入移出事件+解决鼠标事件没有反应
鼠标移入移出事件代码 <div mouseenter"onMouseOver(item)" mouseleave"onMouseOut"></div> methods methods:{// 鼠标移入onMouseOver(item){console.log(item, 鼠标进来了);},// 鼠标移出onMouseOut(){console.log(鼠标出去了);}, }, 这…...
右键移动文件.cmd
REM xcopy /yis %1% % % %D:\test\% REM https://zhuanlan.zhihu.com/p/38330443 不能移动文件夹 不知道为什么 xcopy(拷贝目录文件、目录结构的指令)_尚可名片 写了个JAVA程序,怎样实现在win选中文件后,右键发送到我的程序&am…...
web基础
web基础 与http 域名:由于IP地址不易记忆,域名用来代替IP地址, (DNS)服务与配置:先在本地hosts里去找,然后在本地域名服务器递归查找,本地域名服务器在一级二级按域名长度迭代查找后…...
牛客网算法八股刷题系列(七)正则化(软间隔SVM再回首)
牛客网算法八股刷题系列——正则化[软间隔SVM再回首]题目描述正确答案:C\mathcal CC题目解析开端:关于函数间隔问题解释的补充软间隔SVM\text{SVM}SVMHinge\text{Hinge}Hinge损失函数支持向量机的正则化题目描述 关于支持向量机(Support Vector Machine…...
开源即时通讯IM框架MobileIMSDK的微信小程序端开发快速入门
一、理论知识准备 您需要对微信小程序开发有所了解: 1)真正零基础入门学习笔记系列2)从零开始的微信小程序入门教程3)最全教程:微信小程序开发入门详解 您需要对WebSocket技术有所了解: 1)新…...
【C++从0到1】11、C++中赋值运算
C从0到1全系列教程 1、赋值运算 运算符示例描述c a b;将把a b的值赋给c。 把右边操作数的值赋给左边操作数。c a;相当于 c c a; 加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数。-c - a;相当于 c c - a; 减且赋值运算符,把左…...
GaussDB数据库事务介绍
目录 一、前言 二、GaussDB事务的定义及应用场景 三、GaussDB事务的管理 四、GaussDB事务语句 五、GaussDB事务隔离 六、GaussDB事务监控 七、总结 一、前言 随着大数据和互联网技术的不断发展,数据库管理系统的作用越来越重要,实现数据的快速读…...
MYSQL——美团面试题
MYSQL——美团面试题 2023/3/27 美团二面 题目描述 Create table If Not Exists courses (student varchar(255), class varchar(255));insert into courses (student, class) values (A, Math); insert into courses (student, class) values (B, English); insert into co…...
Python 小型项目大全 16~20
#16 钻石 原文:http://inventwithpython.com/bigbookpython/project16.html 这个程序的特点是一个小算法,用于绘制各种尺寸的 ASCII 艺术画钻石。它包含绘制轮廓或你指定大小的填充式菱形的功能。这些功能对于初学者来说是很好的练习;试着理解…...
UE4/5C++之SubSystem的了解与创建
目录 了解生命周期 为什么用他,简单讲解? SubSystems创建和使用 创建SubSystems中的UGamelnstanceSubsystem类: 写基本的3个函数: 在蓝图中的样子: 创建SubSystems中的UEditorSubsystem类: SubSyste…...
牛客网在线编程SQL篇非技术快速入门题解(二)
大家好,我是RecordLiu。 初学SQL,有哪些合适的练习网站推荐呢? 如果你有编程基础,那么我推荐你到Leetcode这样的专业算法刷题网站,如果没有,也不要紧,你也可以到像牛客网一样的编程网站去练习。 牛客网有很多面向非技…...
航天器轨道六要素和TLE两行轨道数据格式
航天器轨道要素 椭圆轨道六根数指的是:半长轴aaa,离心率e,轨道倾角iii、升交点赤经Ω\OmegaΩ、近地点辐角ω\omegaω、和过近地点时刻t0t_0t0(或真近点角φ)。 决定轨道形状: 轨道半长轴aaa࿱…...
【Spring Cloud Alibaba】第01节 - 课程介绍
一、Spring Cloud Alibaba 阿里巴巴公司 以Spring Cloud的衍生微服务一站式解决方案 二、学习Spring Cloud Alibaba的原因 Spring Cloud 多项组件宣布闭源或停止维护Spring Cloud Alibaba 性能优于Spring Cloud 三、适应群体 有Java编程和SpringBoot基础,最好有Sp…...
iOS和Android手机浏览器链接打开app store或应用市场下载软件讲解
引言当开发一个app出来后,通过分享引流用户去打开/下载该app软件,不同手机下载的地方不一样,比如:ios需要到苹果商店去下载,Android手机需要到各个不同的应用商店去下载(华为手机需要到华为应用商店下载,vi…...
2023第十四届蓝桥杯省赛java B组
试题 A: 阶乘求和 本题总分:5 分 【问题描述】 令 S 1! 2! 3! ... 202320232023!,求 S 的末尾 9 位数字。 提示:答案首位不为 0。 【答案提交】 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一 个整数…...
【杂谈】-递归进化:人工智能的自我改进与监管挑战
递归进化:人工智能的自我改进与监管挑战 文章目录 递归进化:人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管?3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...
安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件
在选煤厂、化工厂、钢铁厂等过程生产型企业,其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进,需提前预防假检、错检、漏检,推动智慧生产运维系统数据的流动和现场赋能应用。同时,…...
如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
jmeter聚合报告中参数详解
sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample(样本数) 表示测试中发送的请求数量,即测试执行了多少次请求。 单位,以个或者次数表示。 示例:…...
git: early EOF
macOS报错: Initialized empty Git repository in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/.git/ remote: Enumerating objects: 2691797, done. remote: Counting objects: 100% (1760/1760), done. remote: Compressing objects: 100% (636/636…...
Modbus RTU与Modbus TCP详解指南
目录 1. Modbus协议基础 1.1 什么是Modbus? 1.2 Modbus协议历史 1.3 Modbus协议族 1.4 Modbus通信模型 🎭 主从架构 🔄 请求响应模式 2. Modbus RTU详解 2.1 RTU是什么? 2.2 RTU物理层 🔌 连接方式 ⚡ 通信参数 2.3 RTU数据帧格式 📦 帧结构详解 🔍…...
