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

MySQL 高级SQL语句(一)

目录

一、高级SQL语句(进阶查询)

1.1 select

1.2 distinct

1.3 where

1.4 and 和 or

1.5 in

1.6 between

1.7 通配符

1.8 like

1.9 order by


一、高级SQL语句(进阶查询)

先准备2个表

一个location表:

use market;
 create table location(Region char(20),Store_Name char(20));
 insert into location values('East','Boston');
 insert into location values('East','New York');
 insert into location values('West','Los Angeles');
 insert into location values('West','Houston');

0-1.png

一个store_info表:

create table store_info (Store_Name char (20),Sales int (10) ,Date char(10));insert into store_info values('Los Angeles', '1500', '2020-12-05') ;insert into store_info values ('Houston', '250', '2020-12-07') ;insert into store_info values('Los Angeles', '300', '2020-12-08') ;insert into store_info values('Boston', '700', '2020-12-08') ;

0-2.png

1.1 select

select,显示表格中一个或数个字段的所有数据记录。

 

语法: SELECT "字段" FROM "表名";
 ​
 示例:
 select store_name from store_info;
 select store_name,sales from store_info;

1-1.png

1-2.png

1.2 distinct

distinct,不显示重复的数据记录。

注意:关系型数据库,单次只能对一个字段去重。

 

SELECT DISTINCT "字段" FROM "表名";
 ​
 示例:
 select distinct store_name from store_info;    #对商店名称进行去重
 select distinct date from store_info;        #对日期字段进行去重

2-1.png

2-2.png

1.3 where

where,有条件查询。

SELECT "字段" FROM 表名" WHERE "条件";​​示例:select * from store_info where sales > 1000; #查找销售额大于1000的数据记录select store_name from store_info where sales > 1000;  #查找销售额大于1000的商店名称

3-1.png

1.4 and 和 or

and:且。

or:或。

SELECT "字段" FROM "表名" WHERE "条件1"  AND "条件2";SELECT "字段" FROM "表名" WHERE "条件1"  OR "条件2";

#查询销售额大于500且小于1000的数据记录。
 select * from store_info where sales > 500 and sales < 1000 ; 
 ​
 #查询销售额大于200且小于500的记录,或者销售额大于1000的记录。
 select * from store_info where sales > 1000 or (Sales < 500 and Sales > 200); 
 ​
 #查询销售额大于200且小于500的商店名,或者销售额大于1000的商店名。
 select store_name from store_info where sales > 1000 or (Sales < 500 and Sales > 200);

 

4-1.png

4-2.png

4-3.png

1.5 in

in,显示已知的值的数据记录。

 

段" FROM "表名" WHERE "字段" IN ('值1', '值2', ...);   #in,遍历一个取值列表
 SELECT "字段" FROM "表名" WHERE "字段" NOT IN ('值1', '值2', ...);  #not in取反,查询不在这个范围内的值

 #查询商店名为“Los Angeles”,以及商店名为“Houston”的记录。
 select * from store_info where store_name in ('Los Angeles','Houston');    
 ​
 #查询商店名称不是“Los Angeles”、不是“Houston”的记录。
 select * from store_info WHERE store_name not in ('Los Angeles','Houston');

5-1.png

5-2.png

1.6 between

between,显示两个值范围内的数据记录。

 

SELECT "字段" FROM "表名" WHERE "字段" BETWEEN '值1' AND '值2';
示例:


 #查询销售额在500~1500之间的数据记录(包含500和1500)
 select * from store_info where sales between 500 and 1500;
 ​
 #查询店铺开业日期在2020-12-06到2020-12-10之间的记录(包含这两个日期)
 select * from store_info where date between '2020-12-06' and '2020-12-10';

6-1.png

6-2.png

1.7 通配符

通配符一般都是跟 like 一起使用的。

%:百分号表示零个、一一个或多个字符_:划线表示单个字符
示例:'A_Z':所有以'A'起头,另一个任何值的字符,且以'Z'为结尾的字符串。例如,'ABZ'和'A2Z' 都符合这一一个模式,而'AKKZ'并不符合(因为在A和z之间有两个字符,而不是一个字符)。​'ABC%':所有以'ABC'起头的字符串。例如,'ABCD' 和'ABCABC' 都符合这个模式。​'%XYZ':所有以'XYZ' 结尾的字符串。例如,'WXYZ' 和'ZZXYZ' 都符合这个模式。​'%AN%':所有含有'AN'这 个模式的字符串。例如,'LOS ANGELES'和'SAN FRANCISCO' 都符合这个模式。​'_AN%': 所有第二个字母为'A' 和第三个字母为'N' 的字符串。例如,'SAN FRANCISCO' 符合这个模式,而'Los ANGELES'则不符合这个模式。

1.8 like

like,匹配一个模式来找出我们要的数据记录。

 

SELECT "字段" FROM "表名" WHERE "字段" LIKE {模式} ;
示例:


 #查询商店名称包含字符串"os"的记录
 select * from store_info where store_name like '%os%';
 ​
 #查询商店名称以字符串"on"结尾的记录
 select * from store_info where store_name like '%on';
 ​
 #查询商店名称的第二、第三个字符为"os"的记录
 select * from store_info where store_name like '_os%';

8-1.png

8-2.png

8-3.png

1.9 order by

order by,按关键字排序。

注意:

  • 一般对数值字段进行排序。
  • 如果对字符类型的字段进行排序,则会按首字母排序。
 

SELECT "字段" FROM "表名" [WHERE "条件"] ORDER BY "字段" [ASC|DESC] ;
 #ASC是按照升序进行排序的,是默认的排序方式。
 #DESC是按降序方式进行排序。
示例:


 #查看store_info表中的所有记录,按销售额进行升序排列。
 select * from store_info order by sales ASC;    #ASC可以不加,默认升序
 ​
 #查看store_info表中的所有记录,按销售额进行倒序排列。
 select * from store_info order by sales desc;
 ​
 #获取销售额最大的那行数据记录。即先按销售额进行倒序排列,之后取第一行记录。
 select * from store_info order by sales desc limit 1;

9-1.png

9-2.png

9-3.png

相关文章:

MySQL 高级SQL语句(一)

目录 一、高级SQL语句&#xff08;进阶查询&#xff09; 1.1 select 1.2 distinct 1.3 where 1.4 and 和 or 1.5 in 1.6 between 1.7 通配符 1.8 like 1.9 order by 一、高级SQL语句&#xff08;进阶查询&#xff09; 先准备2个表 一个location表&#xff1a; use m…...

SkyWalking链路追踪-技术文档首页

SkyWalking 文档中文版&#xff08;社区提供&#xff09; (skyapm.github.io)https://skyapm.github.io/document-cn-translation-of-skywalking/ SkyWalking-基本概念 SkyWalking链路追踪是一个用于分布式系统的性能监控工具&#xff0c;它帮助开发人员了解系统中各组件之间…...

AndroidStudio Memory profiler(内存分析器)

1.Record Java/Kotlin allocations 查看java 层中对象的调用栈和短时间内创建对象的次数。可用于内存抖动快速分析,可用快速查找到该对象的调用栈(等同于mat) 从上图可见&#xff0c;短时间内创建了23个char[] 数组&#xff0c;其中最大的char[] 占用20k, 查看cll stack 调用…...

【C++模板进阶】

目录 一、模板使用时的一个小注意点二、非类型模板参数三、类模板的特化3.1函数模板的特化3.2类模板的特化3.2.1全特化3.2.2偏特化 四、模板的分离编译4.1模板不支持分离编译4.2模板分离编译报错的分析4.2解决方案 五、模板的总结 一、模板使用时的一个小注意点 在使用模板时&…...

(一)RabbitMQ概念-优势、劣势、应用场景 、AMQP、工作原理

Lison <dreamlison163.com>, v1.0.0, 2023.06.22 RabbitMQ概念-优势、劣势、应用场景 、AMQP、工作原理 文章目录 RabbitMQ概念-优势、劣势、应用场景 、AMQP、工作原理RabbitMQ概念RabbitMQ的优势RabbitMQ劣势RabbitMQ应用的场景RabbitMQ_AMQPRabbitMQ工作原理 RabbitM…...

JetBrains全家桶:如何自定义实现类TODO注释?

文章目录 效果图具体方法参考文献 效果图 TODO注释大家应该都用过&#xff0c;在注释开头打上TODO的话&#xff0c;软件下方的TODO选项卡里就可以自动筛选出你打了TODO的注释&#xff0c;你可以点击里面对应的注释来实现快速跳转。 jetbrains全家桶&#xff08;如Pycharm、Int…...

【技术干货】工业级BLE5.2蓝牙模块SKB378 使用教程,AT指令集

SKB378是一个高度集成的蓝牙5.2模组&#xff0c;可用来在2.4GHz ISM频段内做高速率、短距离无线通信。工业级标准&#xff0c;支持主从模式(1主对8从)&#xff0c;支持串口透传&#xff0c;AT指令控制&#xff0c;且支持AoA蓝牙高精度室内定位&#xff0c;模组内部集成32位ARM …...

零基础深度学习——学习笔记1 (逻辑回归)

前言 因为各种各样的原因要开始学习深度学习了&#xff0c;跟着吴恩达老师的深度学习视频&#xff0c;自己总结一些知识点&#xff0c;以及学习中遇到的一些问题&#xff0c;以便记录学习轨迹以及以后复习使用&#xff0c;为了便于自己理解&#xff0c;我会将一些知识点用以个…...

I want to know on what switchport is connected my computer (10.8.0.2)

i.e. I am connected to an L2. I want to know on what switchport is connected my computer (10.8.0.2) Well….obviously not on this switch. Let’s dig Now I have the MAC address of my computer, we confinue to dig Computer has been seen on interface g0/2. Let’…...

OpenCv之人脸操作

目录 一、马赛克实现 二、人脸马赛克 三、人脸检测 四、多张人脸检测 一、马赛克实现 案例代码如下: import cv2 import numpy as npimg cv2.imread(8.jpg) # 马赛克方式一:缩小图片 # img2 cv2.resize(img,(600,400)) # # 马赛克方式二: # img2 cv2.resize(img,(600,4…...

C++[第五章]--指针和引用

指针和引用 文章目录 指针和引用1、引用2、指针3、右值引用4、引用限定符const和引用限定符1、引用 引用就是别名,引用定义时必须初始化: int a; int &b=a; //b即为a的别名 如果不是形参,必须初始化,引用某一变量 2、指针 指针和c一样; this指针 在类的成员函数中使…...

用i18next使你的应用国际化-React

ref: https://www.i18next.com/ i18next是一个用JavaScript编写的国际化框架。 i18next为您提供了一个完整的解决方案&#xff0c;本地化您的产品从web端到移动端和桌面端。 在react项目中安i18next依赖&#xff1a; i18nextreact-i18nexti18next-browser-languagedetector&…...

TSN -促进IT/OT 融合的网络技术

时间敏感网络&#xff08;tsn&#xff09;技术是IT/OT 融合的一项关键的基础网络技术&#xff0c;它实现了在一个异构网络中&#xff0c;实现OT的实时数据和IT系统的交互数据的带宽共享。 TSN允许将经典的高确定性现场总线系统和IT应用&#xff08;如大数据传输&#xff09;的功…...

改进的北方苍鹰算法优化BP神经网络---回归+分类两种案例

今天采用前作者自行改进的一个算法---融合正余弦和折射反向学习的北方苍鹰(SCNGO)优化算法优化BP神经网络。 文章一次性讲解两种案例&#xff0c;回归与分类。回归案例中&#xff0c;作者选用了一个经典的股票数据。分类案例中&#xff0c;选用的是公用的UCI数据集。 BP神经网络…...

等保工作如何和企业创新业务发展相结合,实现“安全”和“创新”的火花碰撞?

等保工作如何和企业创新业务发展相结合&#xff0c;实现“安全”和“创新”的火花碰撞&#xff1f;在当今数字化浪潮的背景下&#xff0c;企业越来越需要在“安全”和“创新”之间找到平衡点&#xff0c;以实现业务的持续创新和安全的有效保障。等保工作可以为企业提供安全保障…...

23.7.25 杭电暑期多校3部分题解

1005 - Out of Control 题目大意 解题思路 code 1009 - Operation Hope 题意、思路待补 code #include <bits/stdc.h> using namespace std; const int N 1e5 9; struct lol {int x, id;} e[3][N * 2]; int t, n, a[3][N * 2], hd[3], tl[3], vis[N * 2], q[N * …...

【设计模式——学习笔记】23种设计模式——桥接模式Bridge(原理讲解+应用场景介绍+案例介绍+Java代码实现)

问题引入 现在对不同手机类型的不同品牌实现操作编程(比如:开机、关机、上网&#xff0c;打电话等)&#xff0c;如图 【对应类图】 【分析】 扩展性问题(类爆炸)&#xff0c;如果我们再增加手机的样式(旋转式)&#xff0c;就需要增加各个品牌手机的类&#xff0c;同样如果我们…...

文档翻译软件那么多,哪个能满足你的多语言需求?

想象一下&#xff0c;你手中拿着一份外文文件&#xff0c;上面记录着珍贵的知识和信息&#xff0c;但是语言的障碍让你无法领略其中的内容。而此时&#xff0c;一位翻译大师闪亮登场&#xff01;他的翻译技巧犹如一把魔法笔&#xff0c;能够将文字的魅力和意境完美传递。无论是…...

MySQL 中NULL和空值的区别

MySQL 中NULL和空值的区别&#xff1f; 简介NULL也就是在字段中存储NULL值&#xff0c;空值也就是字段中存储空字符(’’)。区别 1、空值不占空间&#xff0c;NULL值占空间。当字段不为NULL时&#xff0c;也可以插入空值。 2、当使用 IS NOT NULL 或者 IS NULL 时&#xff0…...

阿里云容器镜像仓库(ACR)的创建和使用

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中&#xff0c;我们已经大致实现了rpc服务端的各项功能代…...

多场景 OkHttpClient 管理器 - Android 网络通信解决方案

下面是一个完整的 Android 实现&#xff0c;展示如何创建和管理多个 OkHttpClient 实例&#xff0c;分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

C++.OpenGL (10/64)基础光照(Basic Lighting)

基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

select、poll、epoll 与 Reactor 模式

在高并发网络编程领域&#xff0c;高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表&#xff0c;以及基于它们实现的 Reactor 模式&#xff0c;为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。​ 一、I…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中&#xff0c;提示一个依赖外部头文件的cpp源文件需要同步&#xff0c;点…...

AI,如何重构理解、匹配与决策?

AI 时代&#xff0c;我们如何理解消费&#xff1f; 作者&#xff5c;王彬 封面&#xff5c;Unplash 人们通过信息理解世界。 曾几何时&#xff0c;PC 与移动互联网重塑了人们的购物路径&#xff1a;信息变得唾手可得&#xff0c;商品决策变得高度依赖内容。 但 AI 时代的来…...