当前位置: 首页 > news >正文

数据库之运算符

目录

一、算数运算符

二、比较运算符

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

!

http://www.lryc.cn/news/407158.html

相关文章:

  • 【自动化机器学习AutoML】AutoML工具和平台的使用
  • 【每日一练】python求最后一个单词的长度
  • [红明谷CTF 2021]write_shell 1
  • 【Go - sync.once】
  • Spark RPC框架详解
  • win10安装ElasticSearch7.x和分词插件
  • Linux中,MySQL的用户管理
  • 个人电脑网络安全 之 防浏览器和端口溢出攻击 和 权限对系统的重要性
  • 美食聚焦 -- 仿大众点评项目技术难点总结
  • 拓扑图:揭示复杂系统背后的结构与逻辑
  • Java面试八股之什么是spring boot starter
  • 探究项目未能获得ASPICE 1、2级能力的原因及改进策略
  • WHAT - 不同 HTTP Methods 使用场景、使用方法和可能遇到的问题
  • Pytorch使用教学4-张量的索引
  • 【Git多人协作开发】同一分支下的多人协作开发模式
  • Vue使用FullCalendar实现日历/周历/月历
  • 社交圈子聊天交友系统搭建社交app开发:陌生交友发布动态圈子单聊打招呼群聊app介绍
  • 【微信小程序实战教程】之微信小程序原生开发详解
  • PHP身份证实名认证接口集成守护电商购物
  • 为什么有了MAC还需要IP?
  • SpringBoot中如何使用RabbitMq
  • LangChain自定义Embedding封装 之 ERNIE Bot
  • Git 安装教程
  • Lua 类管理器
  • 实现领域驱动设计(DDD)系列详解:领域模型的持久化
  • 配置sublime的中的C++编译器(.sublime-build),实现C++20
  • Android14 - 前台Service、图片选择器 、OpenJDK 17、其他适配
  • 数据恢复教程:如何从硬盘、SD存储卡、数码相机中恢复误删除数据。
  • 谷粒商城实战笔记-47-商品服务-API-三级分类-网关统一配置跨域
  • stm32平台为例的软件模拟时间,代替RTC调试