第六章 - 数据过滤where(where与and和or的组合用法)
第六章 - 数据过滤(where的用法)
- 基本用法
- where的条件限制符
- 等于号`=`
- 不等号`!=` 或者`<>`
- 小于`<`
- 大于`>`
- 小于等于`<=`
- 大于等于`>=`
- between 的用法
- 空值和非空值
- 组合条件 and
- 组合条件 or
- and 和 or 的计算次序
- in 和 not in
基本用法
- 在查询语句中,可以根据需要使用where语句来对指定搜索条件进行过滤,得到需要的数据,where语句在from语句之后使用。
# 查询售价大于600000的数据
selectSalePrice
fromtest.houseprices
whereSalePrice > 600000

where的条件限制符
等于号=
- 只查询
displayName字段内等于'Michael Carter'的数据
selectdisplayName,weight,nflId
fromnfl.players
where# 此处'Michael Carter'可以使用单引号' 或者双引号 " ,表示(str)字符串格式displayName = 'Michael Carter'

不等号!= 或者<>
- 查询性别不为’male‘的数据
select*
fromtest.titanic
where# 或者 sex <> 'male' 表示的意义是一样的sex != 'male'

小于<
- 查询年龄小于10岁的数据,比10小的数,不包含10
select*
fromtest.titanic
whereage < 10

大于>
- 查询年龄大于 岁的数据
select*
fromtest.titanic
whereage > 60

小于等于<=
- 查询小于等于6岁的用户数据,不大于6的数,包含6.
select
*
from
test.titanic
where
age <= 6
大于等于>=
- 查询小于等于60岁的用户数据,不小于60的数,包含60.
select*
fromtest.titanic
whereage >= 60

between 的用法
- 查询年龄在50到54岁之间的数据,between是包含50和54这两个值的。
select*
fromtest.titanic
whereage between 50 and 54

空值和非空值
- 一般数据库内空值的数据都用null来填充(也有用’-999‘),当用null来填充空值的时候,就可以直接使用此语句来筛选。(用其他数据值填充的可以直接用等于
=和不等于!=来筛选)
完整数据带有null。

- 筛选age为null的数据
select
*
from
test.test001
where
age is null

- 筛选age不是null 的数据
select*
fromtest.test001
whereage is not null

组合条件 and
- 进行多条件筛选时,可以使用and给where语句添加多个条件。
- and表示筛选条件要同时满足,也就是“和”的意思。
- 下面例子表示,查询同时满足 sex = male 和 age > 60 条件的数据。
select`name`,`sex`,`age`,`fare`
fromtest.titanic
wheresex = 'male' and age > 60

组合条件 or
- 进行多条件筛选时,也可以使用 or 给 where 语句添加多个条件
- or 表示满足其中一个即可,也就是“或”的意思。
- 下面例子和上面用同样的数据,只是把条件and变为or,数据量明显要多很多,因为只要满足sex=male或者age>60其中一个条件就可以,条件限制更宽松一些
select`name`,`sex`,`age`,`fare`
fromtest.titanic
wheresex = 'male' or age > 60

and 和 or 的计算次序
- 下面例子可以看到,我们想要的结果是要满足age=40或者age=60这两个条件,且满足fare>50,需要fare都大于50。但是输出结果后面的四行数据age=40都是fare是小于50的,和想要的结果不一样。
- 这是因为,and在计算次序中的优先级高于or,系统会先计算and然后再计算or。
select
`name`,
`sex`,
`age`,
`fare`
from
test.titanic
where
age = 40 or age = 60 and fare > 50

- 解决这种问题的方法:用括号来明确分组相应的操作符,因为括号的计算优先级要高于and和or
- 具体如下,执行时会优先计算括号内的条件,然后再计算括号外的条件
select`name`,`sex`,`age`,`fare`
fromtest.titanic
where(age = 40 or age = 60) and fare > 50

in 和 not in
- in用来指定条件范围,范围中的每个条件都可以进行匹配
- in的取值全部都再括号中,由逗号分隔,当取值为字符时,需要用引号(单/双引号 都可以)来表示字符,例如
('Jack','小明') - in与or条件的功能是相同的,用的代码更少且执行速度更快。
select`name`,`sex`,`age`,`fare`
fromtest.titanic
where# 表示 满足 age=50 或者 age=55,age in (50,55)

- not in 表示否定后面的条件,如上面例子把in 改为not in 就表示所有age不是50或者55的数据。
select`name`,`sex`,`age`,`fare`
fromtest.titanic
whereage not in (50,55)

相关文章:
第六章 - 数据过滤where(where与and和or的组合用法)
第六章 - 数据过滤(where的用法)基本用法where的条件限制符等于号不等号! 或者<>小于<大于>小于等于<大于等于>between 的用法空值和非空值组合条件 and组合条件 orand 和 or 的计算次序in 和 not in基本用法 在查询语句中࿰…...
Oracle 定时任务例子
背景: 创建一个Oracle的定时任务,每天或指定时间 -----定义存储过程 create or replace procedure AAA_BBB as begin insert into AAA select * from BBB; commit; end; ----------------创建定时任务 declare xjobid number; begin DBMS_JOB.SUBM…...
Android常用9种自动化测试框架对比,Appium有哪些优势?
随着移动终端的普及,手机应用越来越多,也越来越重要。 App的回归测试用例数量也越来越多,全量回归也越来越消耗时间。移动 APP自动化测试 的难点移动 APP的UI自动化测试长久以来一直是一个难点,难点在于UI的”变”, 变化导致自动化…...
在vue2使用百度脑图的kityminder-core进行二次开发思维导图,给节点绑定数据后添加新的图标
需求说明:在给某个节点绑定文件数据后,用户并不能一眼看出哪个节点上绑定了数据,因此需要在绑定文件数据后给节点上加一个图标用于标识。 添加图标 1、在kityminder-core/src/module/file.js文件中添加代码 (file.js文件如何添加…...
FPGA时序约束与分析 --- 时序约束概述
本系列参考文献 — FPGA时序与约束分析-吴厚航 FPGA从综合到实现需要的过程如下:synth_design -> opt_design -> place-design -> phys_opt_design -> route_design 1、时序约束的理解 2、时序约束的基本路径 3、时序约束的步骤 4、时序约束的主要方法…...
2022——寒假总结
文章目录背景报名摸索结果总结背景 大一上学期,刚上大学没有尽快适应,什么都没有学到。 因为疫情,所以平时的测试以及期末都是线上进行的,就没怎么认真学,网课直接划水。 我的生活与学习很不平衡,还热衷于参…...
C++11 Lambda表达式
文章首发公众号:iDoitnow 为什么引入Lambda Lambda表达式是一个可以内联在我们代码中的函数,我们可以将他传递给另外一个函数。在没有引入Lambda表达式之前,当我们遇到需要对多个数据,按照同一规则进行操作的时候,创建…...
冰湖灾害遥感监测评价与模拟分析
查看原文>>>mp.weixin.qq.com/s?__bizMzAxNzcxMzc5MQ&mid2247582638&idx1&sna22a1697b16a5edc2b74cb1ccf011689&chksm9be29cbeac9515a8227460103ae1b9f280af688eab0ce5a43448f9fa7c9cab820c389fcdc031&token10630879&langzh_CN#rd【专家简介…...
Highcharts.Chart
Highcharts 是一个使用javascript 脚本来生成图表的工具,和jfreechart 作用类似,都用来生成各种图表,并支持图片的导出和打印。 从官网 www.highcharts.com 上下载的压缩表中的example中有各种图表的例子。 要编写生成图表的例子建议从 文…...
遍历map的几种方法
#先往map加入几个数据 Map<Integer,String> mapnew HashMap<>(); map.put(1,"美好的周一"); map.put(2,"美好的周二"); map.put(3,"美好的周三"); 1 2 3 4 方法一:普通的foreach循环,…...
RocketMQ源码分析之Broker概述与同步消息发送原理与高可用设计及思考
1、Broker概述 Broker 在 RocketMQ 架构中的角色,就是存储消息,核心任务就是持久化消息,生产者发送消息给 Broker,消费者从 Broker 消费消息,其物理部署架构图如下: 备注:以上摘录自官方 RocketMQ 设计文档…...
K8s常见面试题总结
部分内容来自:k8s面试题大全(持续更新中) 目录 k8s常考面试题 1.1.什么是k8s? 1.2.简述Docker和Kubernetes的关系 1.3.k8s的组件有哪些,作用分别是什么? 1.4.简述kubelet的功能和作用 1.5.简述pod是…...
OpenFeign 自定义解码器Decoder 失效
问题描述 项目上开发了OpenFeign的自定义解码器,用来统一处理返回结果。 开发完后测试已经生效了,过两天后,这块代码没有变动的情况下,发现请求结果突然又不走自定义的解码器了。 代码如下 解码器 BaseResponseFeignDecoder …...
c++练习题8
1.在do-while循环中,循环由do开始,用while结束;必须注意的是:在while表达式后面的 不能丢,它表示do-while语句的结束。 A)0 B)1 C);…...
Python循环语句代码详解:while、for、break
目录 1 while循环 1 while循环 循环语句是程序设计中常用的语句之一。任何编程语言都有while循环,Python也不例外。while循环的格式如下所示。 while(表达式): … else: … while循环的执行过程:当循环表达式为真时,依次执行whi…...
vue父子组件传值不能实时更新
最近做项目,遇到个大坑,这会爬出来了,写个总结,避免下次掉坑。 vue父子组件传值不能实时更新问题,父组件将值传给了子组件,但子组件显示的值还是原来的初始值,并没有实时更新,为什么…...
2023美赛A题思路数据代码分享
文章目录赛题思路2023年美国大学生数学建模竞赛选题&论文一、关于选题二、关于论文格式三、关于论文提交四、论文提交流程注意不要手滑美赛A题思路数据代码【最新】赛题思路 (赛题出来以后第一时间在CSDN分享) 最新进度在文章最下方卡片,加入获取一手资源 202…...
【蓝桥杯集训·每日一题】AcWing 3768. 字符串删减
文章目录一、题目1、原题链接2、题目描述二、解题报告1、思路分析2、时间复杂度3、代码详解三、知识风暴双指针一、题目 1、原题链接 3768. 字符串删减 2、题目描述 给定一个由 n 个小写字母构成的字符串。 现在,需要删掉其中的一些字母,使得字符串中不…...
Python|每日一练|树|深度优先搜索|数组|二分查找|链表|双指针|单选记录:填充每个节点的下一个右侧节点指针|搜索插入位置|旋转链表
1、填充每个节点的下一个右侧节点指针(树,深度优先搜索) 给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下: struct Node { int val; Node *left; Node *rig…...
降雨量实时监测系统压电式雨量计
压电式雨量传感器由上盖、外壳和下盖组成,壳体内部有压电片和电路板,可以固定在外径50mm立柱上和气象站横杆上。传感器采用冲击测量原理对单个雨滴重量进行测算,进而计算降雨量。雨滴在降落过程中受到雨滴重量和空气阻力的作用,到…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
数据链路层的主要功能是什么
数据链路层(OSI模型第2层)的核心功能是在相邻网络节点(如交换机、主机)间提供可靠的数据帧传输服务,主要职责包括: 🔑 核心功能详解: 帧封装与解封装 封装: 将网络层下发…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...
html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...
Python Ovito统计金刚石结构数量
大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...
代码规范和架构【立芯理论一】(2025.06.08)
1、代码规范的目标 代码简洁精炼、美观,可持续性好高效率高复用,可移植性好高内聚,低耦合没有冗余规范性,代码有规可循,可以看出自己当时的思考过程特殊排版,特殊语法,特殊指令,必须…...
第7篇:中间件全链路监控与 SQL 性能分析实践
7.1 章节导读 在构建数据库中间件的过程中,可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中,必须做到: 🔍 追踪每一条 SQL 的生命周期(从入口到数据库执行)&#…...
springboot 日志类切面,接口成功记录日志,失败不记录
springboot 日志类切面,接口成功记录日志,失败不记录 自定义一个注解方法 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;/***…...
