【JavaWeb】Day39.MySQL概述——数据库设计-DQL(二)

数据库设计-DQL

聚合函数

聚合函数查询就是纵向查询,它是对一列的值进行计算,然后返回一个结果值。(将一列数据作为一个整体,进行纵向计算)

语法:

select  聚合函数(字段列表)  from  表名 ;

 注意 : 聚合函数会忽略空值,对NULL值不作为统计。

  • count :按照列去统计有多少行数据。

          在根据指定的列统计的时候,如果这一列中有null的行,该行不会被统计在其中。

  • sum :计算指定列的数值和,如果不是数值类型,那么计算结果为0
  • max :计算指定列的最大值
  • min :计算指定列的最小值
  • avg :计算指定列的平均值

案例1:统计该企业员工数量

~~~mysql
# count(字段)
select count(id) from tb_emp;-- 结果:29
select count(job) from tb_emp;-- 结果:28 (聚合函数对NULL值不做计算)# count(常量)
select count(0) from tb_emp;
select count('A') from tb_emp;# count(*)  推荐此写法(MySQL底层进行了优化)
select count(*) from tb_emp;
~~~

案例2:统计该企业最早入职的员工(使用子嵌套)

案例3:统计该企业最迟入职的员工

案例4:统计该企业员工 ID 的平均值

案例5:统计该企业员工的 ID 之和

分组查询

分组: 按照某一列或者某几列,把相同的数据进行合并输出。

       分组其实就是按列进行分类(指定列下相同的数据归为一类),然后可以对分类完的数据进行合并计算。分组查询通常会使用聚合函数进行计算。

语法:

select  字段列表  from  表名  [where 条件]  group by 分组字段名  [having 分组后过滤条件];

案例1:根据性别分组 , 统计男性和女性员工的数量

select gender, count(*) from tb_emp

group by gender; -- 按照gender字段进行分组(gender字段下相同的数据归为一组)

案例2:查询入职时间在 '2015-01-01' (包含) 以前的员工 , 并对结果根据职位分组 , 获取员工数量大于等于2的职位

注意事项:

• 分组之后,查询的字段一般为聚合函数和分组字段,查询其他字段无任何意义

 • 执行顺序:where > 聚合函数 > having

where与having区别:

- 执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤。

- 判断条件不同:where不能对聚合函数进行判断,而having可以。

排序查询

排序在日常开发中是非常常见的一个操作,有升序排序,也有降序排序。

语法:

select  字段列表  

from   表名  

[where  条件列表]

[group by  分组字段 ]

order  by  字段1  排序方式1 , 字段2  排序方式2 … ;

排序方式:

 ASC :升序(默认值)

 DESC:降序

案例1:根据入职时间, 对员工进行升序排序

注意事项:如果是升序, 可以不指定排序方式ASC

案例2:根据入职时间,对员工进行降序排序

案例3:根据入职时间对公司的员工进行升序排序,入职时间相同,再按照更新时间进行降序排序

注意事项:如果是多字段排序,当第一个字段值相同时,才会根据第二个字段进行排序

分页查询

       分页操作在业务系统开发时,也是非常常见的一个功能,日常我们在网站中看到的各种各样的分页条,后台也都需要借助于数据库的分页操作。

分页查询语法:

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

案例1:从起始索引0开始查询员工数据, 每页展示5条记录

案例2:查询 第1页 员工数据, 每页展示5条记录

案例3:查询 第2页 员工数据, 每页展示5条记录

注意事项:

1. 起始索引从0开始。        计算公式 :   起始索引 = (查询页码 - 1)* 每页显示记录数

2. 分页查询是数据库的方言,不同的数据库有不同的实现,MySQL中是LIMIT

3. 如果查询的是第一页数据,起始索引可以省略,直接简写为 limit  条数

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

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

相关文章

软件设计—接口安全设计规范

1.token授权机制 2.https传输加密 3.接口调用防滥用 4.日志审计里监控 5.开发测试环境隔离,脱敏处理 6.数据库运维监控审计 软件项目相关全套精华资料包获取方式①:点我获取 获取方式②:本文末个人名片直接获取。

高校人事管理系统业务分析

目标用户 大学人事部门,部门、院系、任务 解决问题 人事部门按业务划分了很多科室、数据分散、工作流程杂乱、工作效率低。 主要功能模块 人事综合管理平台、个人自助服务平台、人才招聘管理系统、薪酬管理子系统、职称评审子系统、绩效考核子系统组成。

泛零售行业大会员经营的业务挑战与应对策略

​泛零售企业发展到成规模阶段一定会沉淀大量会员,在当前的市场竞争下,企业的经营重点在关注增量市场的同时,也会聚焦对存量会员的价值深挖,提升会员忠诚度,实现“以客户体验为中心、以数据驱动运营”。 对于多业态、…

小程序打开空白的问题处理

小程序打开是空白的,如下: 这个问题都是请求域名的问题: 一、检查服务器域名配置了 https没有,如果没有,解决办法是申请个ssl证书,具体看这里 https://doc.crmeb.com/mer/mer2/4257 二、完成第一步后&#…

基于springboot实现墙绘产品展示交易平台管理系统项目【项目源码+论文说明】

基于springboot实现墙绘产品展示交易平台系统演示 摘要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本墙绘产品展示交易平台就是在这样的大环境下诞生&#xff…

RTSP/Onvif视频安防监控平台EasyNVR调用接口返回匿名用户名和密码的原因排查

视频安防监控平台EasyNVR可支持设备通过RTSP/Onvif协议接入,并能对接入的视频流进行处理与多端分发,包括RTSP、RTMP、HTTP-FLV、WS-FLV、HLS、WebRTC等多种格式。平台拓展性强、支持二次开发与集成,可应用在景区、校园、水利、社区、工地等场…

【小程序】常用方法、知识点汇总1

欢迎来到《小5讲堂》 这是《小程序》系列文章,每篇文章将以博主理解的角度展开讲解, 温馨提示:博主能力有限,理解水平有限,若有不对之处望指正! 目录 前言请求超时Markdown解析逐行显示效果文本变动事件转发…

【Linux的进程篇章 - 环境变量的理解】

Linux学习笔记---007 Linux之进程优先级、环境变量以及地址空间的理解1、进程优先级1.1、什么是优先级?1.2、为什么要有优先级?1.3、Linux的优先级特点以及查看方式1.4、进程的几个特性 2、环境变量2.1、概念2.2、命令行参数2.2.1、什么是命令行参数&…

自定义类型—结构体

目录 1 . 结构体类型的声明 1.1 结构的声明 1.2 结构体变量的创建与初始化 1.3 结构体的特殊声明 1.4 结构体的自引用 2. 结构体内存对齐 2.1 对齐规则 2.2 为什么存在内存对齐 2.3 修改默认对齐数 3. 结构体传参 4.结构体实现位段 4.1 位段的内存分配 4.3 位段的…

强化学习MPC——(二)

本篇主要介绍马尔科夫决策(MDP)过程,在介绍MDP之前,还需要对MP,MRP过程进行分析。 什么是马尔科夫,说白了就是带遗忘性质,下一个状态S_t1仅与当前状态有关,而与之前的状态无关。 为…

【重磅消息】2024年中国质量协会正式发布六西格玛项目报告编制要求及撰写模板

2024年,中国质量协会正式发布六西格玛系列项目报告编制要求及撰写模板(以下简称模板),模板针对项目报告的项目简介、项目背景、项目选择、项目管理、项目实施、效果总结等几个部分的内容、格式以及撰写注意事项等方面作了详细要求…

【前端捉鬼记】使用nvm切换node版本后再用node -v查看仍然是原来的版本

今天遇到一个诡异的问题,使用nvm切换node版本,明明提示已经切换成功,可是再次查看node版本还是之前的! 尝试了很多办法,比如重新打开一个cmd窗口、切换前执行nvm install version都没成功,直到找到这篇文章…

New Phytologist | 丛枝菌根真菌介导的土壤有机质动态过程的新概念框架

8月2日,中国科学院生态环境研究中心陈保冬团队等合作在著名期刊New Phytologist上发表题为"Soil organic matter dynamics mediated by arbuscular mycorrhizal fungi – an updated conceptual framework"的观点类文章,详述了丛枝菌根真菌介导…

App 测试必备 - 建议所有测试人收藏

移动端App性能测试需要关注多个方面,包括响应时间、稳定性、内存使用、CPU使用率、网络性能、电池消耗以及设备兼容性等。通过综合考虑这些方面,并在不同条件下进行全面的测试,可以确保应用程序在各种情况下都能够提供优质的用户体验&#xf…

QGIS操作:制作速率专题图

1、修改配色色带 双击打开的矢量文件,弹出如下图所示的图层属性界面,如下图所示; 点击左侧 符号化,选择色带的变化方式、符号、颜色渐变等方式; 设置每个色带所表示的数值范围,变化模式等内容&#xff1…

《深入Linux内核架构》第2章 进程管理和调度 (2)

目录 2.4 进程管理相关的系统调用 2.4.1 进程复制 2.4.2 内核线程 2.4.3 启动新程序 2.4.4 退出进程 本专栏文章将有70篇左右,欢迎关注,订阅后续文章。 2.4 进程管理相关的系统调用 2.4.1 进程复制 1. _do_fork函数 fork vfork clone都最终调用_…

逻辑卷和磁盘配额

文章目录 一、逻辑卷二、磁盘配额 一、逻辑卷 为什么会出现技术? 分区的缺点: 没有备份功能无法扩容性能取决于硬盘本身 相关概念 LVM 是 Logical Volume Manager 的简称,译为中文就是逻辑卷管理。它是 Linux 下对硬盘分区的一种管理机制。…

玩转儿童数码摄影,儿童人像摄影指南

一、资料前言 本套儿童人像摄影,大小250.91M,共有8个文件。 二、资料目录 《爱孩子爱摄影》.pdf 《六招拍儿童》.pdf 《数码摄影工坊-儿童摄影》.pdf 《专业儿童人像摄影指南》.pdf 宝贝看镜头.pdf 儿童摄影手册.pdf 儿童摄影艺术.pdf 玩转儿童…

如何通过VPN访问内网?

VPN(Virtual Private Network)是一种通过公共网络建立私有网络连接的技术,可以在不同地点的网络中建立安全通道,实现远程访问内网资源的目的。本文将介绍如何通过VPN访问内网,并介绍一款名为“天联”的VPN服务。 什么是…

C/S医学检验LIS实验室信息管理系统源码 医院LIS源码

LIS系统即实验室信息管理系统。LIS系统能实现临床检验信息化,检验科信息管理自动化。其主要功能是将检验科的实验仪器传出的检验数据经数据分析后,自动生成打印报告,通过网络存储在数据库中,使医生能够通过医生工作站方便、及时地…