MySQL学习(5):SQL语句之数据查询语言:DQL

1.DQL语法

select 字段列表
from 表名列表   #DQL是可以进行多表查询的
where 条件列表
group by 分组字段列表
having 分组后条件列表
order by 排序字段列表
limit 分页参数

2.基本查询(select)

2.1查询多字段

select 字段1,字段2,字段3,......from 表名;select * from 表名;
#显示表内所有数据
#这条命令最好不要用,影响执行效率

2.2设置别名

select 字段1 [as] 别名1,字段2 [as] 别名2,字段3 [as] 别名3......from 表名;
#这条语句的作用就是,让查询结果中的字段名显示为别名,看起来更清晰
#as可以省略

2.3去除重复记录

select distinct 字段列表 from 表名;

3.条件查询(where)

select 字段列表 from 表名 where 条件列表;

where后的条件列表有很多种

比较运算符>大于
<小于
>=大于等于
<=小于等于
<>或!=不等于
=等于
in(...)括号内的值多选一,类似于多个或运算

like 占位符

模糊匹配。

_匹配单个字符,%匹配多个字符

is null查询为空的数据
between A and B在A到B的范围内(包含A、B,A必须>B)
逻辑运算符

and或&&

与,多个条件同时成立
or或||或,多个条件任意一个成立

not或!

非,条件不成立

(1)between...and...

(2)in(...)

(3)like 占位符

4.聚合函数(count、max、min、avg、sum)

select 聚合函数(字段名) from 表名;
聚合函数功能
count统计数量
max求最大值
min求最小值
avg求平均值
sum求和

聚合函数是不对null值进行运算的(包括count)

5.分组查询(group by、having)

select 字段列表 from 表名 [where 条件] group by 分组字段名 [having 分组后过滤条件];
#where条件是在分组前生效的,having条件是对分组后的字段生效的
#where不可以对聚合函数进行判断,having可以对聚合函数进行判断

上图语句中的第一个gender使结果出现了"男、女",如果省略掉,则只会得到2个数值

count(*)可以当做被检索的目标,因此也就代替了select后的*,也就是字段列表。也就是说,当有聚合函数出现时,select后面就不再跟字段列表了

分组查询往往配合聚合函数进行使用

select workaddress,count(*) from emp group by workaddress;
#这条语句会显示每个地址的人数select workaddress,count(*) from emp where age < 45 group by workaddress;
#这条语句会显示每个地址下年龄小于45的人数select workaddress,count(*) from emp where age < 45 group by workaddress having count(*) >= 3;
#对于每个地址下年龄小于45的人数,这条语句会显示这个人数大于等于3的地址与人数

执行顺序是where > 聚合函数 > having

6.排序查询

select 字段列表 from 表名 order by 字段1 排序方式1,字段2 排序方式2......;
#排序方式有2种:ASC、DESC,分别代表升序和降序。如果不填,则默认为升序
#order by后出现多个字段排序时,会在第一个字段相同时,再对第二个字段进行排序

7.分页查询

select 字段列表 from 表名 limit 起始索引,查询记录数;

*起始索引=(查询页码-1)*每页显示记录数

*分页查询的关键词在不同的数据库中是不同的,mysql的关键词是limit

*如果查询的是第一页数据,起始索引可以省略

8.执行顺序

如下图所示,蓝色关键字代表语法顺序,红色圈数字代表执行顺序

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/36864.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Volov7的安全帽检测系统

1 项目介绍 1.1 摘要 随着工业化和城市化的迅猛推进&#xff0c;工作场所的安全管理愈发受到重视。安全帽作为保护工人头部安全的关键装备&#xff0c;其实时监测和检测的重要性不言而喻。本文提出并深入研究了基于YOLOv7算法的安全帽佩戴检测技术&#xff0c;该技术旨在实现…

Day.js

Day.js 是什么&#xff1f; Day.js是一个极简的JavaScript库&#xff0c;可以为现代浏览器解析、验证、操作和显示日期和时间。 Day.js中文网 为什么要使用Day.js &#xff1f; 因为Day.js文件只有2KB左右&#xff0c;下载、解析和执行的JavaScript更少&#xff0c;为代码留下更…

作物检测:YOLOv8+SwanLab

1. 项目介绍 基于深度学习的作物检测通过精准管理和数据驱动决策&#xff0c;能够提高作物产量和质量&#xff0c;优化农业资源利用&#xff0c;推动农业自动化进程&#xff0c;从而保障粮食安全。目前&#xff0c;作物检测领域大多针对单类作物进行检测。因此&#xff0c;本项…

SDIO学习(2)--SD卡 2.0协议

本文参考文档&#xff1a; 《SD Specifications Part 1 Physical Layer Simplified Specification Version 2.00》 1 SD卡简介 1.1 SD卡概念 1.2 SD卡外形和接口 Clk&#xff1a;时钟线&#xff0c;由SDIO主机产生 CMD&#xff1a;命令控制线&#xff0c;SDIO主机通过改…

基于C++标准库实现定时器类

基于C标准库实现定时器类 定时器类是多线程编程中经常设计到的工具类 简单的定时器原理其实很简单&#xff08;是不是有点GNU is not unix的味道;&#xff09;&#xff1a; 创建一个新线程在那个线程里等待等待指定时长后做任务 python标准库中就有这么一个定时器类&#xf…

升级!升级!升级!MobPush基础标签推送全新升级,助力开发者精细化运营

“广播推送点击率不高&#xff0c;会员转化差” “新用户拉新后留存不高&#xff0c;次留、3日留存不达标” “用户的复购较低&#xff0c;黏性不高&#xff0c;导致GMV未达预期” 我们总是会听到运营人员关于目标达成过程中遇到这样或者那样的问题。这些问题汇总起来就回到…

STM32 HAL库 外部中断 实现按键控制LED亮灭

目录 1、为什么使用GPIO外部中断控制LED亮灭&#xff1f; 2、NVIC嵌套向量中断控制器 3、EXTI外部中断 4、项目的硬件排线 5、STM32CUBE_MX配置 6、HAL库代码 7、实际效果 1、为什么使用GPIO外部中断控制LED亮灭&#xff1f; 实现LED亮灭控制有很多方式&#xff0c;其中…

公文出错事非小,这些公文写作的常见错误,你中过招吗?

公文是企事业单位、相关部门内外沟通交流的重要工具&#xff0c;不少“笔杆子”经常需要与公文打交道&#xff0c;每天会接触大量的公文。然而在公文撰写的细微之处&#xff0c;稍有不慎&#xff0c;便可能犯下一些常见的错误。这些错误如同蚁穴&#xff0c;虽小却足以破坏公文…

stm32cubemx,adc采样的几种方总结,触发获取adc值的方法dma timer trigger中断

stm32cubemx adc采样的几种方总结&#xff0c;触发获取adc值的方法 timer trigger中断 方法1&#xff0c;软件触发方法2&#xff1a;,Timer触发ADC采集通过DMA搬运 触发获取adc值的方法 Regular Conversion launched by software 软件触发 调用函数即可触发ADC转换 Timer X Cap…

Python基于逻辑回归分类模型、决策树分类模型、LightGBM分类模型和XGBoost分类模型实现车辆贷款违约预测项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 随着经济的发展和人民生活水平的提高&#xff0c;汽车消费在居民消费中所占比例逐渐增加&#xff0c;汽…

克服指标管理痛点,实现数据价值最大化

在当下的企业管理中&#xff0c;由于数据量的激增&#xff0c;管理方式逐渐从基于经验转向基于数据。在此过程中&#xff0c;我们能够通过数据探查业务情况、分析数据&#xff0c;从而获取更优的决策支持数据。这通常通过数据报表或分析平台来实现&#xff0c;对于临时性场景&a…

护眼大路灯哪个牌子好用?五款好用的护眼灯分享

护眼大路灯哪个牌子好用&#xff1f;现在的孩子从幼儿园开始就开始学习&#xff0c;面临的用眼压力就很大&#xff0c;但想要孩子视力不受影响&#xff0c;大路灯是得好好安排起来&#xff0c;但动辄大几千的护眼灯真是让我们这些普通家庭的家长望而却步&#xff0c;有没有好用…

控制系统稳定性常见策略

提升控制系统稳定性是确保系统可靠运行的关键&#xff0c;以下是一些常见策略&#xff1a; 1. 控制算法优化 优化控制算法是提升系统稳定性的核心方法之一。常见的控制算法包括PID控制、模糊控制、自适应控制等。通过调整和优化这些算法的参数&#xff0c;可以显著提高系统的…

填报高考志愿时,学校、专业和城市怎么选择呢?

我的观点是&#xff1a; 专业>城市>学校 专业是兴趣导向&#xff0c;符合自己的价值观&#xff0c;失去了这种驱动力的专业学习&#xff0c;会变得非常艰难的&#xff0c;而且没有竞争力&#xff0c;所以我的排序第一位是专业。 其次是城市&#xff0c;最好是一线城市&…

划重点!炒伦敦金看k线图的要点

对于刚刚开始参与伦敦金交易&#xff0c;还在学习如何看K线的投资者来说&#xff0c;掌握一些看k线图的要点&#xff0c;对于更好地分析市场的行情走势&#xff0c;找到有利的入场机很有帮助&#xff0c;以下是一些关键的建议&#xff0c;希望能够供大家参考。 K线有阳线和阴线…

Coze搭建《测测你的本命宠物》

前言 本文讲解如何从零开始&#xff0c;使用扣子平台去搭建《测测你的本命宠物》 《测测你的本命宠物》&#xff1a;测测你的本命宠物 - 扣子 AI Bot (coze.cn) 欢迎大家去体验一下&#xff01;&#xff01;&#xff01; 正文 接下来我们开始讲解制作这个bot的流程吧&#…

rclone 上传资料到 onedrive 遇到限速问题解决

原因分析 可能和脚本参数设置有关系,我的参数是: rclone copy "F:\阿里云盘\6666\局域网" "od:影视" --ignore-existing -u -v -P --transfers20 --ignore-errors --buffer-size128M --check-first --checkers10 --drive-acknowledge-abuse差不多8G大小的…

如何使得Macos的剪切板感知fileURL并当fileURL被执行paste 动作时 回调到某个监听的函数 从而来填充file content

问题及尝试&#xff1a; 我在做一个跨平台文件拷贝的功能&#xff0c;文件可能是从其他操作系统比如Linux 或者Windows 拷贝到Macos上&#xff0c; 但是我试过所有可以hook NSPasteboard的方法&#xff0c;确实没有找到可以监听macos 剪切板的方法&#xff0c;因为fileURL 确实…

邮件接口代码案例中的SMTP服务器配置详解!

邮件接口代码案例的编写技巧&#xff1f;如何集成邮件服务API&#xff1f; 对于开发者来说&#xff0c;邮件接口代码案例提供了丰富的参考和实践机会&#xff0c;其中SMTP服务器配置是不可或缺的一环。AoKSend将详细讲解如何配置SMTP服务器&#xff0c;并解析其中的重要参数和…

【自动化测试】Selenium自动化测试框架 | 相关介绍 | Selenium + Java环境搭建 | 常用API的使用

文章目录 自动化测试一、selenium1.相关介绍1.Selenium IDE2.Webdriverwebdriver的工作原理&#xff1a; 3.selenium Grid 2.Selenium Java环境搭建3.常用API的使用1.定位元素2.操作测试对象3.添加等待4.打印信息5.浏览器的操作6.键盘事件7.鼠标事件8.定位一组元素9.多层框架定…