数据库中逻辑运算符的介绍以及优先级表

简介:逻辑运算符主要判断表达式的真假,返回值为1,0,null

其中包含:

        逻辑非:not或!

        逻辑与:and或&&

        逻辑或:or或||

        逻辑异或:XOR

1.逻辑非运算

规则:
        当给定的值为非0 值时返回 0
        当给定的值为NULL 时,返回 NULL
例:
SELECTNOT1,NOT0,NOT(1+1),NOT!1,NOTNULL;

2.逻辑与

  规则:
        运算符是当给定的所有值均为非0值,并且都不为 NULL 时,返回1;
        
        当给定的一个值或者多个值为0时则返回 0 ;否则返回 NULL
SELECT 1 AND -1,0 AND 1,0 AND NULL,1 AND NULL;

SELECT employee_id,last_name
FROM employees
WHERE salary>=10000 AND last_name LIKE '小%';

3.逻辑或

规则:

        1.当给定的值都不为NULL ,并且任何一个值为非 0 值时,则返回1 ,否则返回 0
        2.当一个值为NULL ,并且另一个值为非 0 值时,返回 1 ,否则返回 NULL
        3.当两个值都为 NULL时,返回NULL
SELECT 1 OR -1,1 OR 0,1 OR NULL,0 || NULL,NULL || NULL;

注意:

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

4.逻辑异或:

规则:

        1.当给定的值中任意一个值为NULL 时,则返回 NULL
        2.如果两个非NULL的值都是 0 或者都不等于 0 时,则返回 0
        3.如果一个值为0 ,另一个值不为 0 时,则返回 1
select 1 XOR -1,1 XOR 0,0 XOR 0,1 XOR NULL,1 XOR 1 XOR 1,0 XOR 0 XOR 0

5.位运算符

&按位与

|按位或

^按位异或

~按位取反

>>按位右移

<<按位左移

例:按位与

SELECT 1&10,20&30;

1 的二进制数为 0001 10 的二进制数为 1010 ,所以 1&10 的结果为 0000 ,对应的十进制数为 0
20 的二进制数为10100 30 的二进制数为 11110 ,所以 20&30 的结果为 10100 ,对应的十进制数为 20 。(一位一位比较运算)

例2:按位或

SELECT 1|10 , 20|30;

1 的二进制数为 0001 10 的二进制数为 1010 ,所以 1|10 的结果为 1011 ,对应的十进制数为 11
20 的二进制数为10100 30 的二进制数为 11110 ,所以 20|30 的结果为 11110 ,对应的十进制数为 30

例3:按位异或

SELECT 1^10 , 20^30;

例4:按位取反

SELECT 10 & ~1;

现在以按位与计算为例:

例5:按位右移:

简介:将给定的值的二进制数的所有位右移指定的位数。右移指定的位数后,右边低位的数值被移出并丢弃,左边高位空出的位置用0 补齐。
SELECT 1>>2,4>>2;

解释:1的二进制数为00000001,右移2位为00000000,对应的十进制数为0

            4的二进制数为00000100,右移2位为00000001,对应的十进制数为1

例6:按位左移

简介:将给定的值的二进制数的所有位左移指定的位数。左移指定的位数后,左边高位的数值被移出并丢弃,右边低位空出的位置用0 补齐。
SELECT 1<<2,4<<2;

1 的二进制数为 00000001 ,左移两位为 00000100 ,对应的十进制数为 4
4 的二进制数为 00000100 ,左移两位为00010000 ,对应的十进制数为 16

                                                运算符的优先级表


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/751013.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mac打开exe文件的三大方法 mac怎么运行exe文件 mac打开exe游戏 macbookpro打开exe

exe文件是Windows系统的可执行文件&#xff0c;虽然Mac系统上无法直接打开exe文件&#xff0c;但是你可以在Mac电脑上安装双系统或者虚拟机来实现mac电脑上运行exe文件。除了这两种方法之外&#xff0c;你还可以在Mac电脑上使用类虚拟机软件打开exe文件&#xff0c;这三种方法各…

双指针 | 移动零 | 复写零

1.移动零 题目描述&#xff1a; 给定一个数组 nums&#xff0c;编写一个函数将所有 0 移动到数组的末尾&#xff0c;同时保持非零元素的相对顺序。 示例&#xff1a; 输入: nums [0,1,0,3,12] 输出: [1,3,12,0,0]解题思路&#xff1a; right指针一直往后移动&#xff0c;当…

欧洲跨境物流仓库视频监控系统开发的解决方案

中国联通针对仓储物流行业的数字化需求&#xff0c;提供全面的解决方案&#xff0c;特别是在海外仓储领域&#xff0c;我们深谙企业面临的挑战&#xff0c;如预算限制、仓储空间需求以及城郊网络覆盖不足等问题。我们利用自身强大的网络资源和技术实力&#xff0c;为出海仓储企…

redis学习-Hash类型相关命令及特殊情况分析

目录 1. hset KEY key1 value1 key2 value2 ... 2. hget KEY key 3. hgetall KEY 4. hmget KEY key1 key2 ... 5. hkeys KEY 6. hvals KEY 7. hdel KEY key1 key2 ... 8. hlen KEY 9. hexists KEY key 10. hincrby KEY key num 11. hsetnx KEY key value Hash的内部…

实时数仓项目《一》-实时数仓架构

目录 1. 实时数仓与离线数仓 2. 实时数仓需求 3. 架构图 3.1 行为日志处理&#xff1a; 3.2 业务库表处理&#xff1a; 4. 面试题&#xff1a; &#x1f9c0;你们的实时数仓有分层吗&#xff1f; &#x1f9c0;那你们的业务数据呢&#xff1f; &#x1f9c0;那你们的O…

字符分类函数(iscntrl、i是space.....)---c语言

目录 一、定义二、字符分类函数2.1 -iscntrl&#xff08;&#xff09;2.1.1定义2.1.2使用举例 2.2 -isspace&#xff08;&#xff09;2.2.1描述2.2.2使用举例 2.3-isdigit()2.3.1描述2.3.2使用举例 2.4-isxdigit()2.4.1描述 2.5-islower()2.5.1描述2.5.2使用举例 2.6-isupper()…

THM学习笔记—Simple CTF

nmap扫描&#xff0c;发现2222端口很奇怪啊&#xff0c;重新换一种方式扫描2222端口 发现是ssh 先用ftp试试&#xff0c;尝试匿名登录 下载所有文件 发现只有一个ForMitch.txt&#xff0c;告诉我们其账号密码为弱密码&#xff0c;我们猜测Mitch为其用户名&#xff0c;尝试暴力…

MechanicalSoup,一个非常实用的 Python 自动化浏览器交互工具库!

目录 前言 什么是 Python MechanicalSoup 库&#xff1f; 核心功能 使用方法 1. 安装 MechanicalSoup 库 2. 创建 MechanicalSoup 客户端 3. 打开网页并与之交互 实际应用场景 1. 网页自动化测试 2. 网络爬虫与数据提取 3. 网页自动化操作 4. 自动化填写和提交多个表单 5.…

洛谷 P1102 A-B数对

A-B 数对 题目背景 出题是一件痛苦的事情&#xff01; 相同的题目看多了也会有审美疲劳&#xff0c;于是我舍弃了大家所熟悉的 AB Problem&#xff0c;改用 A-B 了哈哈&#xff01; 题目描述 给出一串正整数数列以及一个正整数 C C C&#xff0c;要求计算出所有满足 A −…

24计算机考研调剂 | 福建理工大学

福建理工大学收调剂 &#xff08;08开头&#xff09; 考研调剂招生信息 学校:福建工程学院 专业:工学 年级:2024 招生人数:6 招生状态:正在招生中 联系方式:********* (为保护个人隐私,联系方式仅限APP查看) 补充内容 福建理工大学材料科学与工程学院&#xff0d;智能高…

[flink总结]什么是flink背压 ,有什么危害? 如何解决flink背压?flink如何保证端到端一致性?

1 Flink的背压&#xff08;Backpressure&#xff09;是指当下游算子处理数据的速度不及上游算子传递数据的速度时&#xff0c;会导致数据始终堆积在网络层或内存中&#xff0c;会导致系统效率下降&#xff0c;出现背压现象。 背压的危害&#xff1a; 系统性能下降&#xff1a;…

V-JEPA模型,非LLM另外的选择,AGI的未来:迈向Yann LeCun先进机器智能(AMI)愿景的下一步

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

EPICS和Arduino Uno之间基于串行文本协议的控制开发

Arduino Uno的串口服务程序设置如文本的串口通信协议设计以及在Arduino上的应用-CSDN博客中所示。通过在串口上发送约定的文本协议&#xff0c;它实现的功能如下&#xff1a; 实现功能&#xff1a; 读取三路0.0V~5.0V模拟量输入&#xff0c;读取端口A0~A2设置三路0.0V~5.0V的模…

typeof 与 instanceof 区别

文章目录 一、typeof二、instanceof三、区别 一、typeof typeof 操作符返回一个字符串&#xff0c;表示未经计算的操作数的类型 使用方法如下&#xff1a; typeof operand typeof(operand)operand表示对象或原始值的表达式&#xff0c;其类型将被返回 举个例子 typeof 1 /…

Unity类银河恶魔城学习记录10-5 p93 Major stats and defensive stats源代码

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释&#xff0c;可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili CharacterStats.cs using System.Collections; using System.Collections…

Vue中的Vnode虚拟Dom一文详解

VNode 是什么&#xff1f; VNode 是 Virtual Node 的缩写&#xff0c;它是 Vue.js 中用来描述真实 DOM 节点的对象。在 Vue 中&#xff0c;每个组件都会被渲染成一个 VNode 树&#xff0c;然后由虚拟 DOM 算法&#xff08;Virtual DOM Algorithm&#xff09;将其转化为真实的 …

js 常见基础问题 var、let、const的区别

var、let 和 const 是 JavaScript 中用来声明变量的关键字&#xff0c;它们之间有几个关键的区别&#xff1a; 1.变量提升&#xff08;Hoisting&#xff09;: var 声明的变量会被提升到作用域的顶部&#xff0c;这意味着你可以在声明之前访问它们&#xff0c;值为 undefined。…

MySQL数据库操作学习(2)表查询

文章目录 一、表查询1.表字段的操作①查看表结构②字段的增加③字段长度/数据类型的修改④字段名的修改⑤删除字符段⑥清空表数据⑦修改表名⑧删除表 2、表数据查询3、where 字段4、聚合函数 一、表查询 1.表字段的操作 ①查看表结构 desc 表名; # 查看表中的字段类型&#…

K8S之持久化存储

持久化存储 支持的持久化存储类型EmptyDirHostPathNFS 在K8S中部署的应用都是以pod容器的形式运行的&#xff0c;假如部署数据库服务 例如&#xff1a;MySQL、Redis等&#xff0c;需要对产生的数据做备份。如果pod不挂载数据卷&#xff0c;那pod被删除或重启后这些数据会随之消…

Windows server Database 2025 安装 i225/i226 网卡驱动

windows这比坏得很&#xff0c;intel消费级网卡不准在服务器系统上安装。你要说他是异构不支持&#xff1f;他就纯粹恶心人。 之前已经安装过一次&#xff0c;但是今天database预览版一更新&#xff0c;又给我把网卡驱动杀了&#xff0c;气死&#xff0c;写一篇教程。 1.去官网…