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

第六章 - 数据过滤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的组合用法)

第六章 - 数据过滤&#xff08;where的用法&#xff09;基本用法where的条件限制符等于号不等号! 或者<>小于<大于>小于等于<大于等于>between 的用法空值和非空值组合条件 and组合条件 orand 和 or 的计算次序in 和 not in基本用法 在查询语句中&#xff0…...

Oracle 定时任务例子

背景&#xff1a; 创建一个Oracle的定时任务&#xff0c;每天或指定时间 -----定义存储过程 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有哪些优势?

随着移动终端的普及&#xff0c;手机应用越来越多&#xff0c;也越来越重要。 App的回归测试用例数量也越来越多&#xff0c;全量回归也越来越消耗时间。移动 APP自动化测试 的难点移动 APP的UI自动化测试长久以来一直是一个难点&#xff0c;难点在于UI的”变”, 变化导致自动化…...

在vue2使用百度脑图的kityminder-core进行二次开发思维导图,给节点绑定数据后添加新的图标

需求说明&#xff1a;在给某个节点绑定文件数据后&#xff0c;用户并不能一眼看出哪个节点上绑定了数据&#xff0c;因此需要在绑定文件数据后给节点上加一个图标用于标识。 添加图标 1、在kityminder-core/src/module/file.js文件中添加代码 &#xff08;file.js文件如何添加…...

FPGA时序约束与分析 --- 时序约束概述

本系列参考文献 — FPGA时序与约束分析-吴厚航 FPGA从综合到实现需要的过程如下&#xff1a;synth_design -> opt_design -> place-design -> phys_opt_design -> route_design 1、时序约束的理解 2、时序约束的基本路径 3、时序约束的步骤 4、时序约束的主要方法…...

2022——寒假总结

文章目录背景报名摸索结果总结背景 大一上学期&#xff0c;刚上大学没有尽快适应&#xff0c;什么都没有学到。 因为疫情&#xff0c;所以平时的测试以及期末都是线上进行的&#xff0c;就没怎么认真学&#xff0c;网课直接划水。 我的生活与学习很不平衡&#xff0c;还热衷于参…...

C++11 Lambda表达式

文章首发公众号&#xff1a;iDoitnow 为什么引入Lambda Lambda表达式是一个可以内联在我们代码中的函数&#xff0c;我们可以将他传递给另外一个函数。在没有引入Lambda表达式之前&#xff0c;当我们遇到需要对多个数据&#xff0c;按照同一规则进行操作的时候&#xff0c;创建…...

冰湖灾害遥感监测评价与模拟分析

查看原文>>>mp.weixin.qq.com/s?__bizMzAxNzcxMzc5MQ&mid2247582638&idx1&sna22a1697b16a5edc2b74cb1ccf011689&chksm9be29cbeac9515a8227460103ae1b9f280af688eab0ce5a43448f9fa7c9cab820c389fcdc031&token10630879&langzh_CN#rd【专家简介…...

Highcharts.Chart

Highcharts 是一个使用javascript 脚本来生成图表的工具&#xff0c;和jfreechart 作用类似&#xff0c;都用来生成各种图表&#xff0c;并支持图片的导出和打印。 从官网 www.highcharts.com 上下载的压缩表中的example中有各种图表的例子。 要编写生成图表的例子建议从 文…...

遍历map的几种方法

#先往map加入几个数据 Map<Integer,String> mapnew HashMap<>(); map.put(1,"美好的周一"); map.put(2,"美好的周二"); map.put(3,"美好的周三"); 1 2 3 4 方法一&#xff1a;普通的foreach循环&#xff0c…...

RocketMQ源码分析之Broker概述与同步消息发送原理与高可用设计及思考

1、Broker概述 Broker 在 RocketMQ 架构中的角色&#xff0c;就是存储消息&#xff0c;核心任务就是持久化消息&#xff0c;生产者发送消息给 Broker,消费者从 Broker 消费消息&#xff0c;其物理部署架构图如下&#xff1a; 备注&#xff1a;以上摘录自官方 RocketMQ 设计文档…...

K8s常见面试题总结

部分内容来自&#xff1a;k8s面试题大全&#xff08;持续更新中&#xff09; 目录 k8s常考面试题 1.1.什么是k8s&#xff1f; 1.2.简述Docker和Kubernetes的关系 1.3.k8s的组件有哪些&#xff0c;作用分别是什么&#xff1f; 1.4.简述kubelet的功能和作用 1.5.简述pod是…...

OpenFeign 自定义解码器Decoder 失效

问题描述 项目上开发了OpenFeign的自定义解码器&#xff0c;用来统一处理返回结果。 开发完后测试已经生效了&#xff0c;过两天后&#xff0c;这块代码没有变动的情况下&#xff0c;发现请求结果突然又不走自定义的解码器了。 代码如下 解码器 BaseResponseFeignDecoder …...

c++练习题8

1&#xff0e;在do-while循环中&#xff0c;循环由do开始&#xff0c;用while结束&#xff1b;必须注意的是&#xff1a;在while表达式后面的 不能丢&#xff0c;它表示do-while语句的结束。 A&#xff09;0 B&#xff09;1 C&#xff09;&#xff1b;…...

Python循环语句代码详解:while、for、break

目录 1 while循环 1 while循环 循环语句是程序设计中常用的语句之一。任何编程语言都有while循环&#xff0c;Python也不例外。while循环的格式如下所示。 while(表达式): … else: … while循环的执行过程&#xff1a;当循环表达式为真时&#xff0c;依次执行whi…...

vue父子组件传值不能实时更新

最近做项目&#xff0c;遇到个大坑&#xff0c;这会爬出来了&#xff0c;写个总结&#xff0c;避免下次掉坑。 vue父子组件传值不能实时更新问题&#xff0c;父组件将值传给了子组件&#xff0c;但子组件显示的值还是原来的初始值&#xff0c;并没有实时更新&#xff0c;为什么…...

2023美赛A题思路数据代码分享

文章目录赛题思路2023年美国大学生数学建模竞赛选题&论文一、关于选题二、关于论文格式三、关于论文提交四、论文提交流程注意不要手滑美赛A题思路数据代码【最新】赛题思路 (赛题出来以后第一时间在CSDN分享) 最新进度在文章最下方卡片&#xff0c;加入获取一手资源 202…...

【蓝桥杯集训·每日一题】AcWing 3768. 字符串删减

文章目录一、题目1、原题链接2、题目描述二、解题报告1、思路分析2、时间复杂度3、代码详解三、知识风暴双指针一、题目 1、原题链接 3768. 字符串删减 2、题目描述 给定一个由 n 个小写字母构成的字符串。 现在&#xff0c;需要删掉其中的一些字母&#xff0c;使得字符串中不…...

Python|每日一练|树|深度优先搜索|数组|二分查找|链表|双指针|单选记录:填充每个节点的下一个右侧节点指针|搜索插入位置|旋转链表

1、填充每个节点的下一个右侧节点指针&#xff08;树&#xff0c;深度优先搜索&#xff09; 给定一个 完美二叉树 &#xff0c;其所有叶子节点都在同一层&#xff0c;每个父节点都有两个子节点。二叉树定义如下&#xff1a; struct Node { int val; Node *left; Node *rig…...

降雨量实时监测系统压电式雨量计

压电式雨量传感器由上盖、外壳和下盖组成&#xff0c;壳体内部有压电片和电路板&#xff0c;可以固定在外径50mm立柱上和气象站横杆上。传感器采用冲击测量原理对单个雨滴重量进行测算&#xff0c;进而计算降雨量。雨滴在降落过程中受到雨滴重量和空气阻力的作用&#xff0c;到…...

srs linux

下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935&#xff0c;SRS管理页面端口是8080&#xff0c;可…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!

5月28日&#xff0c;中天合创屋面分布式光伏发电项目顺利并网发电&#xff0c;该项目位于内蒙古自治区鄂尔多斯市乌审旗&#xff0c;项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站&#xff0c;总装机容量为9.96MWp。 项目投运后&#xff0c;每年可节约标煤3670…...

python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码&#xff0c;实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...

【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)

前言&#xff1a; 双亲委派机制对于面试这块来说非常重要&#xff0c;在实际开发中也是经常遇见需要打破双亲委派的需求&#xff0c;今天我们一起来探索一下什么是双亲委派机制&#xff0c;在此之前我们先介绍一下类的加载器。 目录 ​编辑 前言&#xff1a; 类加载器 1. …...

es6+和css3新增的特性有哪些

一&#xff1a;ECMAScript 新特性&#xff08;ES6&#xff09; ES6 (2015) - 革命性更新 1&#xff0c;记住的方法&#xff0c;从一个方法里面用到了哪些技术 1&#xff0c;let /const块级作用域声明2&#xff0c;**默认参数**&#xff1a;函数参数可以设置默认值。3&#x…...

恶补电源:1.电桥

一、元器件的选择 搜索并选择电桥&#xff0c;再multisim中选择FWB&#xff0c;就有各种型号的电桥: 电桥是用来干嘛的呢&#xff1f; 它是一个由四个二极管搭成的“桥梁”形状的电路&#xff0c;用来把交流电&#xff08;AC&#xff09;变成直流电&#xff08;DC&#xff09;。…...