MySQL 常用查询语句精粹
引言
MySQL 是一种广泛使用的开源关系型数据库管理系统,其强大的查询语言为用户提供了丰富的数据处理能力。掌握 MySQL 的常用查询语句对于数据库管理和数据分析至关重要。本文将介绍一些 MySQL 中的常用查询语句,并提供实际的示例。
基础查询
1. 选择特定列
SELECT column1, column2 FROM table_name;
这个语句从 table_name
表中选择 column1
和 column2
列。
2. 选择所有列
SELECT * FROM table_name;
使用星号(*
)代表选择所有列。
3. 限制结果数量
SELECT * FROM table_name LIMIT number;
使用 LIMIT
子句限制查询结果的数量。
4. 去重查询
SELECT DISTINCT column1 FROM table_name;
使用 DISTINCT
关键字返回唯一不同的值。
条件查询
5. 使用 WHERE 子句
SELECT * FROM table_name WHERE condition;
WHERE
子句用于过滤记录,以满足指定的条件。
6. 比较运算符
SELECT * FROM table_name WHERE column1 = 'value';
使用比较运算符(如 =
, <>
, >
, <
, >=
, <=
)来指定条件。
7. 逻辑运算符
SELECT * FROM table_name WHERE column1 = 'value' AND column2 < 100;
使用逻辑运算符(如 AND
, OR
, NOT
)来组合多个条件。
8. 范围查询
SELECT * FROM table_name WHERE column1 BETWEEN value1 AND value2;
BETWEEN
子句用于选择在两个值之间的数据。
9. 模式匹配
SELECT * FROM table_name WHERE column1 LIKE '%pattern%';
使用 LIKE
操作符和百分号(%
)进行模式匹配。
10. 空值检查
SELECT * FROM table_name WHERE column1 IS NULL;
检查列值是否为 NULL
。
数据排序
11. 升序排序
SELECT * FROM table_name ORDER BY column1 ASC;
使用 ASC
关键字对结果进行升序排序。
12. 降序排序
SELECT * FROM table_name ORDER BY column1 DESC;
使用 DESC
关键字对结果进行降序排序。
13. 多列排序
SELECT * FROM table_name ORDER BY column1 ASC, column2 DESC;
根据多个列进行排序,每个列可以指定不同的排序方向。
数据聚合
14. 使用聚合函数
SELECT COUNT(*), AVG(column1), SUM(column1), MAX(column1), MIN(column1) FROM table_name;
聚合函数用于计算数据的总数、平均值、总和、最大值和最小值。
15. 聚合与分组
SELECT column1, COUNT(*) FROM table_name GROUP BY column1;
使用 GROUP BY
子句按一个或多个列对结果集进行分组,并进行聚合计算。
连接查询
16. 内连接
SELECT * FROM table1 INNER JOIN table2 ON table1.column_name = table2.column_name;
内连接用于返回两个表中匹配连接条件的记录。
17. 左连接
SELECT * FROM table1 LEFT JOIN table2 ON table1.column_name = table2.column_name;
左连接返回左表(table1
)的所有记录,即使右表(table2
)中没有匹配的记录。
18. 右连接
SELECT * FROM table1 RIGHT JOIN table2 ON table1.column_name = table2.column_name;
右连接返回右表(table2
)的所有记录,即使左表(table1
)中没有匹配的记录。
19. 全外连接
SELECT * FROM table1 FULL OUTER JOIN table2 ON table1.column_name = table2.column_name;
全外连接返回两个表中的所有记录,无论它们是否匹配连接条件。
子查询
20. 带子查询的查询
SELECT * FROM table_name WHERE column1 IN (SELECT column1 FROM other_table);
子查询通常用于返回一个值列表,该列表用于主查询的条件判断。
21. 子查询与聚合
SELECT AVG(column1) AS average FROM table_name WHERE column1 > (SELECT AVG(column1) FROM other_table);
子查询可以执行聚合操作,并与主查询进行比较。
数据操作
22. 插入数据
INSERT INTO table_name (column1, column2) VALUES ('value1', 'value2');
向表中插入新行。
23. 更新数据
UPDATE table_name SET column1 = 'new_value' WHERE condition;
更新满足条件的记录。
24. 删除数据
DELETE FROM table_name WHERE condition;
删除满足条件的记录。
结语
MySQL 提供了丰富的查询语句,以满足不同场景下的数据操作需求。从简单的数据检索到复杂的数据分析,MySQL 的查询语句都是强大而灵活的工具。希望本文能帮助你更好地理解和使用 MySQL 查询语句。
相关文章:
MySQL 常用查询语句精粹
引言 MySQL 是一种广泛使用的开源关系型数据库管理系统,其强大的查询语言为用户提供了丰富的数据处理能力。掌握 MySQL 的常用查询语句对于数据库管理和数据分析至关重要。本文将介绍一些 MySQL 中的常用查询语句,并提供实际的示例。 基础查询 1. 选择…...
hive的内部表(MANAGED_TABLE)和外部表(EXTERNAL_TABLE)的区别
1.hive的表类型分为外部表和内部表 内部表和外部表的主要区别在于数据的存储方式。 外部表:外部表的存储在hdfs中,是我们指定的文件目录,当我们删除数据或者删除分区的时候不会将元数据删除,数据还会在hdfs目录中,我们…...
【AutoSar网络管理】验证ecu能够从RepeatMessage状态切换到ReadySleep
本专栏将为您提供: Autosar网络管理介绍,包括:状态迁移、状态行为、状态表现、切换条件、时间参数、消息类型等。DUT模拟节点介绍,包括:设计思路、代码展示、编写须知等。测试用例介绍,包括:测试内容、测试步骤、期望结果等。测试脚本介绍,包括:编写思路、代码展示、脚…...
js逻辑或(||)和且()
重点: JavaScript 中的逻辑运算符按照布尔逻辑进行计算,并且返回值是操作数本身 || ||:逻辑或,只要有一个表达式为真(truthy),整个表达式就为真 逻辑或 (||) 的行为: ||运算符可以用来连接两个…...

ElasticSearch入门(六)SpringBoot2
private String author; Field(name “word_count”, type FieldType.Integer) private Integer wordCount; /** Jackson日期时间序列化问题: Cannot deserialize value of type java.time.LocalDateTime from String “2020-06-04 15:07:54”: Failed to des…...

vue项目Nginx部署启动
1.vue打包 (1)package.json增加打包命令 "scripts": {"dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js --host 10.16.14.110","start": "npm run dev","un…...

Duplicate class kotlin.collections.jdk8.CollectionsJDK8Kt found in modules。Android studio纯java代码报错
我使用java代码 构建项目,初始代码运行就会报错。我使用的是Android Studio Giraffe(Adroid-studio-2022.3.1.18-windows)。我在网上找的解决办法是删除重复的类,但这操作起来真的太麻烦了。 这是全部报错代码: Dupli…...

filebeat
1、作用 1、可以在本机收集日志2、也可以远程收集日志3、轻量级的日志收集系统,可以在非java环境运行。logstash是在jmv环境中运行,资源消耗很大,启动一个logstash要消耗500M左右的内存,filebeat只消耗10M左右的内存。收集nginx的…...

matlab y=sin(x) - 2/π*(x)函数绘制
[TOC](matlab ysin(x) - 2/π*(x)函数绘制) ysin(x) - 2/π*(x) clc; clear; close all; x_axis_length 10; y_axis_length 10; % 创建 x 值向量 x_positive linspace(0.1, 10, 1000); % 正半轴上的 x 值 x_negative linspace(-10, -0.1, 1000); % 负半轴上的 x 值% 计算…...

HyperDiffusion阅读
ICCV 2023 创新点 HyperDiffusion:一种用隐式神经场无条件生成建模的新方法。 HyperDiffusion直接对MLP权重进行操作,并生成新的神经隐式场。 HyperDiffusion是与维度无关的生成模型。可以对不同维度的数据用相同的训练方法来合成高保真示例。 局限性…...

分治思想 排序数组
题目 这是一道经典的关于分治思想的算法题,适合刚接触分治的小白。 . - 力扣(LeetCode) 思路 采用递归分治的思想,也就是快速排序的模拟,这里先确定每趟递归的作用: 在一个规定的区间内,随机…...
通用前端分页插件
/*** >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>* 分页组件* >>>>>>>>>>>>>>>>>>>…...
jEasyUI 扩展编辑器
jEasyUI 扩展编辑器 jEasyUI 是一个基于 jQuery 的前端框架,它提供了一系列的组件,用于快速构建交互式的网页界面。这些组件包括布局、窗口、数据网格等,但有时候,开发者可能需要更多的定制化功能,这时候就需要使用 jEasyUI 的扩展编辑器。 什么是 jEasyUI 扩展编辑器 …...
腾讯课堂停服,付费课程怎么观看!!!
腾讯课堂十月1停服拉,大家的付费课程赶紧保存收获一波啊, 爬虫工程师手拿把掐啦!!!...
C# 桥接模式
栏目总目录 概念 桥接模式(Bridge Pattern)是一种结构型设计模式,用于将抽象部分与具体实现部分分离,使它们可以独立地变化。这种设计模式通过创建一个连接(桥)来将抽象和实现部分分离,从而允许…...

GPT-4o mini一手测评:懂得不多,但答得极快
在性能方面,GPT-4o mini 在 MMLU 上的得分为 82%,在 LMSYS 排行榜的聊天方面分数优于 GPT-4。 OpenAI 突然上线新模型 GPT-4o mini, 声称要全面取代 GPT-3.5 Turbo。 在性能方面,GPT-4o mini 在 MMLU 上的得分为 82%,在 LMSYS 排行榜的聊天方面分数优于 GPT-4。 在价格…...
Python面试题:结合Python技术,如何使用Pytest进行单元测试和集成测试
使用Pytest进行单元测试和集成测试是非常常见和有效的方法。下面是如何使用Pytest进行这些测试的详细指南。 安装Pytest 首先,使用pip安装Pytest: pip install pytest单元测试 单元测试用于测试单个模块或函数的功能。假设我们有一个简单的Python模块…...

Java面试必看!知己知彼才能百战百胜,如何做好面试前的准备?
随着 Java 这个赛道的不断内卷,这两年,Java 程序员的面试,从原来的常规八股文(有 标准答案)到现在,以项目、场景问题、技术深度思考为主,逐步转变成没有标准答案, 需要大家基于自己的…...

[Vue warn]: data functions should return an object:
仔细检查你的代码肯定有一个data()内忘记方return{}了...

.net 7和core版 SignalR
.net 7和core版 SignalR代码示例(手把手一起认识Websocket、SignalR) # 白话讲解 刚听到Websocket、SignalR有没有很迷茫,一脸懵逼的那种有没有,都是通信,这俩有什么区别,都是怎么实现的,什么时候该用哪一个, 苦于Websocket、SignalR久已,今天必须整出个一二三来,…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...
Leetcode 3576. Transform Array to All Equal Elements
Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...

3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
ffmpeg(四):滤镜命令
FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...