数据库之运算符
目录
一、算数运算符
二、比较运算符
1.常用比较运算符
2.实现特殊功能的比较运算符
三、逻辑运算符
1.逻辑与运算符(&&或者AND)
2.逻辑或运算符(||或者OR)
3.逻辑非运算符(!或者NOT)
4.逻辑异或运算符(XOR)
四、位运算符
1.位与运算符(&)
2.位或运算符(|)
3.位异或运算符(^)
4.位左移(<<)和位右移(>>)运算符
5.位取反运算符(~)
五、运算符的优先级
一、算数运算符
算数运算符是MySQL中最基本的运算符,主要用于执行数值运算。
| 运算符 | 作用 |
|---|---|
| + | 执行加法运算,用于获得一个或多个值的和 |
| - | 执行减法运算,用于从一个值中减去另一个值 |
| * | 执行乘法运算,得到两个或多个值的乘积 |
| / | 执行除法运算,用一个值除以另一个值得到商 |
| % | 执行求余运算,用一个值除以另一个值得到余数 |
二、比较运算符
比较运算符的作用是将表达式中的两个操作数进行比较,比较结果为真,则返回1,为假则返回0,结果不确定则返回NULL。
| 运算符 | 作用 |
|---|---|
| =(<=>) | 等于 |
| < | 小于 |
| > | 大于 |
| <= | 小于等于 |
| >= | 大于等于 |
| <>(!=) | 不等于 |
| BETWEEN AND | 判断一个值是否在两个值之间 |
| IN | 判断一个值是否在某个集合中 |
| IS NULL | 判断一个值是否为NULL |
| LIKE | 通配符匹配,判断一个值是否包含某个字符 |
| REGEXP | 正则表达式匹配 |
1.常用比较运算符
1.等于运算符
“=”和“<=>”用于判断数字、字符串和表达式是否相等,“<=>”还可以用于NULL(空值)之间的比较。
如果两个操作数中有一个或两个值为NULL(空值),结果为空;如果两个操作数分别为字符串和数值,系统会首先将字符串转换成数值,然后再进行比较。
2.不等于运算符
“<>”和“!=”用于判断数字、字符串和表达式是否相等,如果不相等则返回1,否则返回0.其用法与等于运算符用法相同,但不能操作NULL(空值)。
3.其他常用比较运算符
“<”“>”“<=”和“>=”4种运算符用于比较数字、字符串和表达式,如果比较结果为真则返回1,否则返回0。这些运算符也不能操作NULL(空值)。
如果使用上述4种运算符进行比较的两个操作数为字符串,系统会比较两个字符串的长度,但两个操作数不能一个为数值,一个为字符串。
2.实现特殊功能的比较运算符
正则表达式匹配的REGEXP运算符的应用。
| 通配符 | 作用 |
|---|---|
| ^ | 匹配字符串的开始部分。例如,^b匹配以字母b开始的字符串 |
| $ | 匹配字符串的结束部分。例如,st$匹配以st结束的字符串 |
| . | 匹配除换行符’\n’之外的任何单个字符。例如,b.t匹配bit,bat,but等 |
| [...] | 匹配方括号中(字符集合)所包含的任意一个字符。例如,[a-z]匹配字母表26个字母中的任意一个字母 |
| [^...] | 匹配字符集合未包含的任意一个字符。例如,’[^a]’可以匹配除’a’之外的任意一个字符 |
| p1|p2 | 匹配p1或p2。例如,’k|cat’能匹配到’k’或’cat’。’(k|c)at’可以匹配’kat’或’cat’ |
| * | 匹配符号*前面的零个或多个字符。例如,’ao*’能匹配’a’以及’aoo’,[0-9]*匹配任意数量的数字 |
| + | 匹配符号+前面的字符一次或多次。例如,’ao+’能匹配’ao’以及’aoo’ |
| {n} | 匹配符号前面的字符至少n次。例如,’o{2}’能匹配’food’,但不能匹配’dog’ |
| {n,m} | 匹配符号前面的字符至少n次,至多m次。例如,b{2,4}匹配包含至少2个,至多4个b的字符串。 |
三、逻辑运算符
逻辑运算符又称为布尔运算符,用于确定表达式的真和假。
| 运算符 | 作用 |
|---|---|
| &&(AND) | 逻辑与 |
| ||(OR) | 逻辑或 |
| !(NOT) | 逻辑非 |
| XOR | 逻辑异或 |
1.逻辑与运算符(&&或者AND)
“&&”和“AND”表示逻辑与运算,当所有操作数均为非零值,并且不为NULL时,返回值为1;当一个或多个操作数为0时,返回值为0;当任何一个操作数为NULL,其他操作数为非零值时,返回值为NULL。
使用“&&”和“AND”运算符可以有多个操作数同时进行与运算。
2.逻辑或运算符(||或者OR)
“||”和“OR”表示逻辑或运算,当所有操作数均为非NULL值时,如有任意一个操作数为非零值,返回值为1;当一个操作数为非零值,另外的操作数为NULL时,返回值为1;当所有操作数为NULL时,返回值为NULL;当所有操作数为0时,返回值为0。
3.逻辑非运算符(!或者NOT)
“!”和“NOT”表示逻辑非运算,返回和操作数相反结果。当操作数为0时,返回值为1;当操作数为非零值时,返回值为0;当操作数为NULL时,返回值为NULL。
4.逻辑异或运算符(XOR)
“XOR”表示逻辑异或运算,当两个操作数同时为0或者同为非零值时,返回值为0;当两个操作数一个为非零值,一个为0时,返回值为1;当任意一个操作数为NULL时,返回值为NULL。
四、位运算符
位运算符是将给定的操作数转换为二进制数,然后对各个操作数的每一位进行指定的逻辑运算,最后将二进制结果转换为十进制数,得到位运算的结果。
| 运算符 | 作用 |
|---|---|
| & | 位与 |
| | | 位或 |
| ^ | 位异或 |
| << | 位左移 |
| >> | 位右移 |
| ~ | 位取反 |
1.位与运算符(&)
位与运算是将操作数转换为二进制数后进行按位与运算。在这种运算中,如果对应的二进制位全部为1,则该位的运算结果为1,其他情况运算结果为0。
2.位或运算符(|)
位或运算是将操作数转换为二进制数后进行按位或运算。在这种运算中,如果对应的二进制位有一个或多个为1,则该位的运算结果为1.其他情况运算结果为0。
3.位异或运算符(^)
位异或运算符是将操作数转换为二进制数后进行按位异或运算。在这种运算中,如果对应的二进制位不相同,则该位的运算结果为1,否则为0。
4.位左移(<<)和位右移(>>)运算符
位左移和位右移运算是将操作数转换为二进制数后,使二进制位全部左移或全部右移指定的位数,如果向左移则右边补0,如果向右移则左边补0,移除的位数将被抛弃,最后将移动后的结果转换成十进制数即可。
5.位取反运算符(~)
位取反运算是将操作数转换为二进制数后,对二进制数进行逐位反转,即1取反后变0,0取反后变1。
五、运算符的优先级
| 优先级 | 运算符 |
|---|---|
| 1 | :=(赋值运算) |
| 2 | ||,OR |
| 3 | XOR |
| 4 | &&,AND |
| 5 | NOT |
| 6 | BETWEEN AND,CASE,WHERE,THEN,ELSE |
| 7 | =(比较运算),<=>,<,>,>=,<=,<>,!=,IN,IS NULL,LIKE,REGEXP |
| 8 | | |
| 9 | & |
| 10 | <<,>> |
| 11 | -(减法运算),+ |
| 12 | *,/,% |
| 13 | ^ |
| 14 | -(负号),~ |
| 15 | ! |
相关文章:
数据库之运算符
目录 一、算数运算符 二、比较运算符 1.常用比较运算符 2.实现特殊功能的比较运算符 三、逻辑运算符 1.逻辑与运算符(&&或者AND) 2.逻辑或运算符(||或者OR) 3.逻辑非运算符(!或者NOT&#…...
【自动化机器学习AutoML】AutoML工具和平台的使用
自动化机器学习AutoML:AutoML工具和平台的使用 目录 引言什么是AutoMLAutoML的优势常见的AutoML工具和平台 Google Cloud AutoMLH2O.aiAuto-sklearnTPOTMLBox AutoML的基本使用 Google Cloud AutoML使用示例Auto-sklearn使用示例 AutoML的应用场景结论 引言 自动…...
【每日一练】python求最后一个单词的长度
""" 求某变量中最后一个单词的长度 例如s"Good morning, champ! Youre going to rock this day" 分析思路: 遇到字符串问题,经常和列表结合使用来解决, 可以先用列表的.split()分割方法进行单词分割, 再…...
[红明谷CTF 2021]write_shell 1
目录 代码审计check()$_GET["action"] ?? "" 解题 代码审计 <?php error_reporting(0); highlight_file(__FILE__); function check($input){if(preg_match("/| |_|php|;|~|\\^|\\|eval|{|}/i",$input)){// if(preg_match("/| |_||p…...
【Go - sync.once】
sync.Once 是 Go 语言标准库中的一个结构体,它的作用是确保某个操作在全局范围内只被执行一次。这对于实现单例模式或需要一次性初始化资源的场景非常有用。 典型用法 sync.Once 提供了一个方法 Do(f func()),该方法接收一个没有参数和返回值的函数 f …...
Spark RPC框架详解
文章目录 前言Spark RPC模型概述RpcEndpointRpcEndpointRefRpcEnv 基于Netty的RPC实现NettyRpcEndpointRefNettyRpcEnv消息的发送消息的接收RpcEndpointRef的构造方式直接通过RpcEndpoint构造RpcEndpointRef通过消息发送RpcEndpointRef Endpoint的注册Dispatcher消息的投递消息…...
win10安装ElasticSearch7.x和分词插件
说明: 以下内容整理自网络,格式调整优化,更易阅读,希望能对需要的人有所帮助。 一 安装 Java环境 ElasticSearch使用Java开发的,依赖Java环境,安装 ElasticSearch 7.x 之前,需要先安装jdk-8。…...
Linux中,MySQL的用户管理
MySQL库中的表及其作用 user表 User表是MySQL中最重要的一个权限表,记录允许连接到服务器的帐号信息,里面的权限是全局级的。 db表和host表 db表和host表是MySQL数据中非常重要的权限表。db表中存储了用户对某个数据库的操作权限,决定用户…...
个人电脑网络安全 之 防浏览器和端口溢出攻击 和 权限对系统的重要性
防浏览器和端口溢出攻击 该如何防 很多人都不明白 我相信很多人只知道杀毒软件 却不知道网络防火墙 防火墙分两种 : 1、 病毒防火墙 也就是我们说的杀毒软件 2、 网络防火墙 这是用来防软件恶意通信的 使用防火墙 有两种 1、 半开式规则…...
美食聚焦 -- 仿大众点评项目技术难点总结
1 实现点赞功能显示哪些用户点赞过并安装时间顺序排序 使用sort_set 进行存储,把博客id作为key,用户id作为value,时间戳作为score 但存储成功之后还是没有成功按照时间顺序排名,因为sql语句,比如最后in(5…...
拓扑图:揭示复杂系统背后的结构与逻辑
在现代软件开发和运维中,图形化的表示方式越来越重要。拓扑图,作为一种关键的可视化工具,不仅能够帮助我们理解系统的结构和组件间的关系,还能提升系统的可维护性和可扩展性。 什么是拓扑图? 拓扑图是一种展示系统或网络中各个节点(如服务器、交换机、数据库等)及其连…...
Java面试八股之什么是spring boot starter
什么是spring boot starter Spring Boot Starter是Spring Boot项目中的一个重要概念。它是一种依赖管理机制,用于简化Maven或Gradle配置文件中的依赖项声明。Spring Boot Starter提供了一组预定义的依赖关系,这些依赖关系被封装在一个单一的包中&#x…...
探究项目未能获得ASPICE 1、2级能力的原因及改进策略
项目整体未能获得ASPICE 1、2级能力的原因可能涉及多个方面,以下是基于参考文章中的信息和可能的情境进行的分析: 1.过程成熟度不足:ASPICE(Automotive Software Process Improvement and Capability Determination)是…...
WHAT - 不同 HTTP Methods 使用场景、使用方法和可能遇到的问题
目录 前言基本介绍具体介绍前置知识:幂等和非幂等幂等操作非幂等操作幂等性和非幂等性的应用场景总结 1. GET2. POST3. PUT4. PATCH1. 确保操作是幂等的2. 使用版本控制或条件更新3. 全量更新部分属性4. 使用特定操作指令5. 幂等标识符示例代码总结 5. DELETE6. HEA…...
Pytorch使用教学4-张量的索引
1 张量的符号索引 张量也是有序序列,我们可以根据每个元素在系统内的顺序位置,来找出特定的元素,也就是索引。 1.1 一维张量的索引 一维张量由零维张量构成 一维张量索引与Python中的索引一样是是从左到右,从0开始的ÿ…...
【Git多人协作开发】同一分支下的多人协作开发模式
目录 0.前言场景 1.开发者1☞完成准备工作&协作开发 1.1创建dev分支开发 1.2拉取远程dev分支至本地 1.3查看分支情况和分支联系情况 1.4创建本地dev分支且与远程dev分支建立联系 1.5在本地dev分支上开发file.txt 1.6推送push至远程仓库 2.开发者2☞完成准备工作&…...
Vue使用FullCalendar实现日历/周历/月历
Vue使用FullCalendar实现日历/周历/月历 需求背景:项目上遇到新需求,要求实现工单以日/周/月历形式展示。而且要求不同工单根据状态显示不同颜色,一个工单内部,需要以不同颜色显示三个阶段。 效果图 日历 周历 月历 安装插件…...
社交圈子聊天交友系统搭建社交app开发:陌生交友发布动态圈子单聊打招呼群聊app介绍
系统概述 社交圈子部天交友系统是一个集成即时通讯、社区互动、用户管理等功能的在线社交平台。它支持用户创建个人资料,加入兴趣围子,通过文字、图片、语音、视频等多种方式进行交流,满足用户在不同场景下的社交需求 核心功能 -,…...
【微信小程序实战教程】之微信小程序原生开发详解
微信小程序原生开发详解 微信小程序的更新迭代非常频繁,几乎每个月都会有新版本发布,这就会让初学者感觉到学习的压力和难度。其实,我们小程序的每次版本迭代都是在现有小程序架构基础之上进行更新的,如果想要学好小程序开发技术&…...
PHP身份证实名认证接口集成守护电商购物
在这个万物互联的世界里,网购已成为日常生活中不可或缺的一部分。然而,随着线上交易的增加,如何保护消费者和商家免受欺诈,确保每一笔交易的安全,成了亟待解决的难题。这时,身份证实名认证接口应运而生&…...
Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建
华为云FlexusDeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色,华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型,能助力我们轻松驾驭 DeepSeek-V3/R1,本文中将分享如何…...
第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习) 一、Aspose.PDF 简介二、说明(⚠️仅供学习与研究使用)三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...
Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...
论文阅读:Matting by Generation
今天介绍一篇关于 matting 抠图的文章,抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法,已经有很多的工作和这个任务相关。这两年 diffusion 模型很火,大家又开始用 diffusion 模型做各种 CV 任务了&am…...
