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

【 Python 全栈开发 - WEB开发篇 - 31 】where条件查询

文章目录

  • 一、where条件查询
    • 1.关系运算符查询
    • 2.IN关键字查询
    • 3.BETWEEN AND关键字查询
    • 4.空值查询
    • 5.AND关键字查询
    • 6.OR关键字查询
    • 7.LIKE关键字查询
      • 普通字符串
      • 含有%通配的字符串
      • 含有_通配的字符串


一、where条件查询

MySQL 的 where 条件查询是指在查询数据时,通过 where 关键字指定一个条件来限制查询结果的范围。where 条件查询可以根据一个或多个条件来过滤数据,常用的条件包括等于、大于、小于、不等于、范围、模糊查询等。

例如,查询表中 age 大于 18 的数据:

SELECT * FROM table_name WHERE age > 18;

这条语句会查询表 table_name 中所有 age 大于 18 的数据。

另外,where 条件查询还可以使用逻辑运算符ANDOR来组合多个条件,例如:

SELECT * FROM table_name WHERE age > 18 AND gender = 'male';

这条语句会查询表 table_name 中所有 age 大于 18 且 gender 为 male 的数据。

在 where 条件查询中还可以使用通配符%,表示匹配任意字符,例如:

SELECT * FROM table_name WHERE name LIKE '%张%';

这条语句会查询表 table_name 中所有名字中包含 “张” 的数据。

在开始之前,我们先准备一下:
Windows + R 调出运行框,输入 cmd 回车。
输入mysql -u root -p登录,输入密码。

创建数据库:

DROP DATABASE IF EXISTS mydb;
CREATE DATABASE mydb;
USE mydb;

创建 student 表:

CREATE TABLE student (id CHAR(6),name VARCHAR(50),age INT,gender VARCHAR(50) DEFAULT 'male'
);

向 student 表插入数据:

INSERT INTO student (id,name,age,gender) VALUES ('01', 'lili', 14, 'male');
INSERT INTO student (id,name,age,gender) VALUES ('02', 'wang', 15, 'female');
INSERT INTO student (id,name,age,gender) VALUES ('03', 'tywd', 16, 'male');
INSERT INTO student (id,name,age,gender) VALUES ('04', 'hfgs', 17, 'female');
INSERT INTO student (id,name,age,gender) VALUES ('05', 'qwer', 18, 'male');
INSERT INTO student (id,name,age,gender) VALUES ('06', 'zxsd', 19, 'female');
INSERT INTO student (id,name,age,gender) VALUES ('07', 'hjop', 16, 'male');
INSERT INTO student (id,name,age,gender) VALUES ('08', 'tyop', 15, 'female');
INSERT INTO student (id,name,age,gender) VALUES ('09', 'nhmk', 13, 'male');
INSERT INTO student (id,name,age,gender) VALUES ('10', 'xdfv', 17, 'female');
INSERT INTO student (id,name,age,gender) VALUES ('12', 'lili', 14, 'male');
INSERT INTO student (id,name,age,gender) VALUES ('13', 'wang', 15, 'female');

1.关系运算符查询

常用的关系运算符如下所示:

关系运算符说明
=等于
<>不等于
!=不等于
<小于
<=小于等于
>大于
>=大于等于

查询年龄大于 15 的学生:

select * from student where age>15;

在这里插入图片描述

2.IN关键字查询

IN关键字用于判断某个字段的值是否在指定集合中。如果字段的值恰好在指定的集合中,则将字段所在的记录将査询出来。

查询 id 为 01、02 的学生:

select * from student where id in ('01','02');

在这里插入图片描述
查询 id 为 01、02 以外的学生:

select * from student where id not in ('01','02');

在这里插入图片描述

3.BETWEEN AND关键字查询

BETWEEN AND用于判断某个字段的值是否在指定的范围之内。如果字段的值在指定范围内,则将所在的记录将查询出来.

查询 14 到 16 岁的学生:

select * from student where age BETWEEN 14 AND 16;

在这里插入图片描述
查询 15 岁到 18 岁以外的学生:

select * from student where age not BETWEEN 15 AND 18;

在这里插入图片描述

4.空值查询

在 MySQL 中,使用 IS NULL 关键字判断字段的值是否为空值。请注意:空值 NULL 不同于0,也不同于空字符串。

查询没有名字的学生(???):

select * from student where name is null;

在这里插入图片描述
(每个学生都有名字)。

查询有名字的学生(???):

select * from student where name is not null;

在这里插入图片描述

5.AND关键字查询

使用AND关键字可以连接两个或者多个查询条件。

查询 15 岁到 18 岁的男同(学):

select * from student where age BETWEEN 15 AND 18 and gender='male';

在这里插入图片描述

6.OR关键字查询

使用OR关键字连接多个査询条件。在使用OR关键字时,只要记录满足其中任意一个条件就会被查询出来。

查询大于 15 岁或是女性的同学:

select * from student where age>15 or gender='female';

在这里插入图片描述

7.LIKE关键字查询

使用LIKE关键字可以判断两个字符串是否相匹配。

普通字符串

查询名字叫 “wang” 的学生:

select * from student where name like 'wang';

在这里插入图片描述

含有%通配的字符串

%用于匹配任意长度的字符串。例如,字符串 “a%” 匹配以字符 a 开始任意长度的字符串。

查询姓 “li” 的学生:

select * from student where name like 'li%';

在这里插入图片描述
查询名字以 “g” 结尾的学生:

select * from student where name like '%g';

在这里插入图片描述

含有_通配的字符串

_通配符只匹配单个字符,如果要匹配多个字符,需要连续使用多个下划线通配符。例如,字符串 “ab_” 匹配以字符串 “ab” 开始长度为 3 的字符串,如 abc、abp 等等;字符串 “a__d” 匹配在字符 “a” 和 “d” 之间包含两个字符的字符串,如 “abcd”、“atud” 等等。

查询名字以 zx 开头且长度为 4 的学生:

select * from student where name like 'zx__';

在这里插入图片描述
查询名字以 g 结尾且长度为 4 的学生:

select * from student where name like '___g';

在这里插入图片描述

相关文章:

【 Python 全栈开发 - WEB开发篇 - 31 】where条件查询

文章目录 一、where条件查询1.关系运算符查询2.IN关键字查询3.BETWEEN AND关键字查询4.空值查询5.AND关键字查询6.OR关键字查询7.LIKE关键字查询普通字符串含有%通配的字符串含有_通配的字符串 一、where条件查询 MySQL 的 where 条件查询是指在查询数据时&#xff0c;通过 wh…...

Android系统的Ashmem匿名共享内存子系统分析(5)- 实现共享的原理

声明 其实对于Android系统的Ashmem匿名共享内存系统早就有分析的想法&#xff0c;记得2019年6、7月份Mr.Deng离职期间约定一起对其进行研究的&#xff0c;但因为我个人问题没能实施这个计划&#xff0c;留下些许遗憾…文中参考了很多书籍及博客内容&#xff0c;可能涉及的比较…...

谈一谈冷门的C语言爬虫

C语言可以用来编写爬虫程序&#xff0c;但是相对于其他编程语言&#xff0c;C语言的爬虫开发可能会更加复杂和繁琐。因为C语言本身并没有提供现成的爬虫框架和库&#xff0c;需要自己编写网络请求、HTML解析等功能。 不过&#xff0c;如果你对C语言比较熟悉&#xff0c;也可以…...

基于状态的维护(CBM)如何推动设备效率提高?

基于状态的维护&#xff08;Condition-Based Maintenance&#xff0c;CBM&#xff09;是一种先进的维护策略&#xff0c;通过实时监测和分析设备的状态数据&#xff0c;预测设备故障并采取相应的维护措施。CBM基于数据驱动的方法&#xff0c;能够提高设备的可用性、降低维修成本…...

DC LAB8SDC约束四种时序路径分析

DC LAB 1.启动DC2.读入设计3. 查看所有违例的约束报告3.1 report_constraint -all_violators (alias rc)3.2 view report_constraint -all_violators -verbose -significant_digits 4 (打印详细报告) 4.查看时序报告 report_timing -significant_digits 45. 约束组合逻辑(adr_i…...

学生考试作弊检测系统 yolov8

学生考试作弊检测系统采用yolov8网络模型人工智能技术&#xff0c;学生考试作弊检测系统过在考场中安装监控设备&#xff0c;对学生的作弊行为进行实时监测。当学生出现作弊行为时&#xff0c;学生考试作弊检测系统将自动识别并记录信息。YOLOv8 算法的核心特性和改动可以归结为…...

【基于容器的部署、扩展和管理】 3.2 基于容器的应用程序部署和升级

往期回顾&#xff1a; 第一章&#xff1a;【云原生概念和技术】 第二章&#xff1a;【容器化应用程序设计和开发】 第三章&#xff1a;【3.1 容器编排系统和Kubernetes集群的构建】 3.2 基于容器的应用程序部署和升级 3.2 基于容器的应用程序部署和升级 3.2 基于容器的应用程…...

Jmeter 实现 grpc服务 压测

一、Jmeter安装与配置 网上有很多安装与配置文章&#xff0c;在此不做赘述 二、Jmeter gRPC Request 插件安装 插件下载地址&#xff1a;JMeter Plugins :: JMeter-Plugins.org 将下载文件解压后放到Jmeter安装目录下 /lib/ext 然后在终端输入Jmeter即可打开 Jmeter GUI界面…...

深入源码分析RecyclerView缓存复用原理

文章目录 前言四级缓存 源码分析缓存一级缓存&#xff08;mChangedScrap和mChangedScrap&#xff09;二级缓存&#xff08;mCachedViews&#xff09;三级缓存&#xff08;ViewCacheExtension&#xff09;四级缓存&#xff08;mRecyclerPool&#xff09;缓存池mRecyclerPool结构…...

内网隧道代理技术(一)之内网隧道代理概述

内网隧道代理技术 内网转发 在渗透测试中&#xff0c;当我们获得了外网服务器&#xff08;如web服务器&#xff0c;ftp服务器&#xff0c;mali服务器等等&#xff09;的一定权限后发现这台服务器可以直接或者间接的访问内网。此时渗透测试进入后渗透阶段&#xff0c;一般情况…...

设计图形用户界面的原则

1) 一般性原则&#xff1a;界面要具有一致性、常用操作要有快捷方式、 提供简单的错误处理、对操作人员的重要操作要有信息反馈、操作可 逆、设计良好的联机帮助、合理划分并高效地使用显示屏、保证信息 显示方式与数据输入方式的协调一致 2) 颜色的使用&#xff1a;颜色…...

1:操作系统导论

1.1操作系统的定义 •Anoperatingsystemactsanintermediarybetweenuserofacomputerandthecomputer hardware. ◦ 操作系统充当计算机⽤⼾和计算机硬件之间的中介 •Thepurposeofanoperatingsystemistoprovideanenvironmentinwhichausercanexecute programsinaconvenientandeff…...

什么是微软的 Application Framework?

我是荔园微风&#xff0c;作为一名在IT界整整25年的老兵&#xff0c;今天来看一下什么是微软的 Application Framework&#xff1f; 到底什么是 Application Framework&#xff1f; 还没有真正掌握任何一套Application Framework的使用之前&#xff0c;就来研究这个真的不是很…...

一个关于宏定义的问题,我和ChatGPT、NewBing、Google Bard、文心一言 居然全军覆没?

文章目录 一、问题重述二、AI 解题2.1 ChatGPT2.2 NewBing2.3 Google Bard2.4 文心一言2.5 小结 一、问题重述 今天在问答模块回答了一道问题&#xff0c;要睡觉的时候&#xff0c;又去看了一眼&#xff0c;发现回答错了。 问题描述&#xff1a;下面的z的值是多少。 #define…...

【服务器数据恢复】断电导致RAID无法找到存储设备的数据恢复案例

服务器数据恢复环境&#xff1a; HP EVA存储&#xff0c;6块SAS硬盘组建的raid5磁盘阵列。上层操作系统是WINDOWS SERVER。该存储为公司内部文件服务器使用。 服务器故障&分析&#xff1a; 在遭遇两次意外断电后&#xff0c;设备重启时raid提示“无法找到存储设备”。管理员…...

Windows上不可或缺的5款宝藏软件,工作效率拉满!

职场小白与大牛的区别&#xff1a;小白需要耗费大半天琢磨的事情&#xff0c;而大牛可以只花5分钟就能处理。 “牛人”&#xff0c;即拥有过人之处&#xff0c;专业、经验、技术等等&#xff0c;学会灵活运用高效率的工具也是关键的一点。工具找得好&#xff0c;运用得快&#…...

链表内指定区间反转

题目&#xff1a; 将一个节点数为 size 链表 m 位置到 n 位置之间的区间反转&#xff0c;要求时间复杂度 O(n)&#xff0c;空间复杂度 O(1)。 例如&#xff1a; 给出的链表为 1→2→3→4→5→NULL&#xff0c;m2&#xff0c;n4 返回 1→4→3→2→5→NULL 数据范围&#xff…...

Vue中如何进行地图展示与交互(如百度地图、高德地图)?

Vue中如何进行地图展示与交互 随着移动互联网的普及&#xff0c;地图应用已经成为人们生活中不可或缺的一部分。在Vue.js中&#xff0c;我们可以使用第三方地图库&#xff08;如百度地图、高德地图&#xff09;来实现地图的展示和交互。本文将介绍如何在Vue.js中使用百度地图和…...

uni-app组件概述

1、组件 1.1、组件的含义 组件是视图层的基本组成单元。 组件是一个单独且可复用的功能模块的封装。 组件&#xff0c;包括&#xff1a;以组件名称为标记的开始标签和结束标签、组件内容、组件属性、组件属性值。 <component-name>是开始标签&#xff0c;</compon…...

什么是防火墙?它有什么作用?

作者&#xff1a;Insist-- 个人主页&#xff1a;insist--个人主页 作者会持续更新网络知识和python基础知识&#xff0c;期待你的关注 目录 一、什么是防火墙 二、防火墙的分类 1、软件防火墙 2、硬件防火墙 三、防火墙的作用 1、防止病毒 2、防止访问不安全内容 3、阻…...

C++ 模板与泛型编程入门

C 模板与泛型编程入门 模板把类型&#xff08;及非类型参数&#xff09;作为参数&#xff0c;在编译期由编译器按用法生成具体函数或类&#xff0c;是 C 泛型编程与 STL 的基础。下文以 Max、简单类模板、选择排序及可定制比较器为例说明常见写法&#xff1b;排序复杂度为 (O(…...

想入行5G网络优化工程师?这6个求职陷阱你必须知道

5G网络优化工程师由于其入职门槛低&#xff0c;需求高&#xff0c;成为了不少想转行的人关注的岗位。 但对于刚入行的小白来说&#xff0c;求职路上往往布满陷阱。 作为一名行业接触过一些内幕的过来人&#xff0c;总结了6条找工作的核心建议&#xff0c;希望能帮大家少走弯路…...

OpenClaw技能市场盘点:10个适配Qwen3.5-4B-Claude的实用工具

OpenClaw技能市场盘点&#xff1a;10个适配Qwen3.5-4B-Claude的实用工具 1. 为什么需要关注技能适配性 当我第一次在OpenClaw上尝试安装第三方技能时&#xff0c;遇到了一个典型问题&#xff1a;技能安装成功了&#xff0c;但执行时模型总是输出"我不明白这个请求"…...

好用还专业!高效论文写作全流程AI论文网站推荐(2026 最新)

论文写作全流程可拆解为文献调研→选题/开题→大纲/初稿→文献综述→降重/去AI味→润色/格式→查重/投稿七大环节&#xff0c;以下工具按环节精准匹配&#xff0c;兼顾中文适配、降重能力、去AI痕迹、学术合规四大核心需求&#xff0c;覆盖免费/付费、通用/垂直场景。2026年AI论…...

asp毕业设计下载(全套源码+配套论文)——基于asp+access的办公系统设计与实现

基于aspaccess的办公系统设计与实现&#xff08;毕业论文程序源码&#xff09; 大家好&#xff0c;今天给大家介绍基于aspaccess的办公系统设计与实现&#xff0c;更多精选毕业设计项目实例见文末哦。 文章目录&#xff1a; 基于aspaccess的办公系统设计与实现&#xff08;毕…...

别再只会调库了!用NumPy和Random手搓一个SMOTE算法,我踩过的坑都在这了

从零实现SMOTE算法&#xff1a;NumPy实战与关键问题解析 理解类别不平衡问题的本质 在数据科学和机器学习领域&#xff0c;我们经常会遇到类别分布严重不均衡的数据集。想象一下&#xff0c;你正在处理一个信用卡欺诈检测项目&#xff0c;正常交易记录可能有数百万条&#xff0…...

CentOS7-IP配置记录

简要说明 本文章主要记录CentOS7系统在桥接网络类型下的IP配置测试&#xff0c;主要分为静态和动态配置&#xff0c;以下部署配置仅作参考&#xff0c;可根据实际情况调整。 相关文章 CentOS7部署参考文章&#xff1a;VMware-CentOS7最小化安装记录 CentOS7指令参考文章&am…...

聚焦数据中心基建核心:我国服务器机架导轨市场规模达8.1亿元,产业支撑力凸显

据恒州诚思最新调研数据显示&#xff0c;2025年全球服务器机架导轨市场规模达8.1亿元&#xff0c;预计至2032年将增长至11.61亿元&#xff0c;期间复合增长率&#xff08;CAGR&#xff09;为5.3%。这一增长受多重因素驱动&#xff1a;全球数据中心建设加速&#xff0c;预计2026…...

3步解锁苹果电脑新玩法:用PlayCover畅玩iOS游戏和应用

3步解锁苹果电脑新玩法&#xff1a;用PlayCover畅玩iOS游戏和应用 【免费下载链接】PlayCover Community fork of PlayCover 项目地址: https://gitcode.com/gh_mirrors/pl/PlayCover 还在羡慕朋友在iPad上玩热门手游&#xff0c;而你的Mac只能干看着&#xff1f;想知道…...

告别Transformer!用PyTorch从零实现MLP-Mixer图像分类(附完整代码与调参技巧)

告别Transformer&#xff01;用PyTorch从零实现MLP-Mixer图像分类&#xff08;附完整代码与调参技巧&#xff09; 在计算机视觉领域&#xff0c;Transformer架构近年来风头无两&#xff0c;但你是否想过——仅用多层感知机&#xff08;MLP&#xff09;也能构建高性能视觉模型&a…...