iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >6、【MySQL】使用DQL命令查询数据(二)
  • 896
分享到

6、【MySQL】使用DQL命令查询数据(二)

mysql数据库sql 2023-09-07 14:09:30 896人浏览 安东尼
摘要

✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:乐趣国学的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:MySQL数据库学习之旅

✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。

🍎个人主页:乐趣国学的博客

🍊个人信条:不迁怒,不贰过。小知识,大智慧。

💞当前专栏:MySQL数据库学习之旅

✨特色专栏:国学周更-心性养成之路

🥭本文内容:【Mysql】使用DQL命令查询数据(二)

更多内容点击👇

                       ​​​​【MySQL】使用DQL命令查询数据(一)

目录

1、分组查询

2、HAVING子句

3、LIMIT


1、分组查询

1)什么是分组查询

        在实际的开发中,可能需要先对一组数据进行分组,然后再对每一组的数据进行操作,这时需要用到分组查询。

        用 GROUP BY 语句根据一个或多个列对结果集进行分组。

2)GROUP BY 语法结构

        select...from...group by...

3)关键字的执行顺序问题

        select(4)...from(1)...where(2)...group by(3)...order by(5)...//顺序不能颠倒

4)案例编写

        查询每个部门的部门编号和每个部门的工资和:
        SELECT deptno,SUM(sal) FROM emp GROUP BY deptno;


        查询每个部门的部门编号以及每个部门的人数:
        SELECT deptno,COUNT(*) FROM emp GROUP BY deptno;


        查询每个部门的部门编号以及每个部门工资大于1500的人数:
        SELECT deptno,COUNT(*) FROM emp WHERE sal>2500 GROUP BY deptno;

5)重要规定

  • GROUP BY子句可以包含任意数目的列。这使得能对分组进行嵌套, 为数据分组提供更细致的控制。
  • 如果在GROUP BY子句中嵌套了分组,数据将在最后规定的分组上 进行汇总。换句话说,在建立分组时,指定的所有列都一起计算(所以不能从个别的列取回数据)。
  • GROUP BY子句中列出的每个列都必须是检索列或有效的表达式(但不能是聚集函数)。如果在SELECT中使用表达式,则必须在 GROUP BY子句中指定相同的表达式。不能使用别名。
  • 除聚集计算语句外,SELECT语句中的每个列都必须在GROUP BY子 句中给出。
  • 如果分组列中具有NULL值,则NULL将作为一个分组返回。如果列中有多行NULL值,它们将分为一组。
  • GROUP BY子句必须出现在WHERE子句之后,ORDER BY子句之前。

2、HAVING子句

1)什么是HAVING 子句

        在 sql 中增加 HAVING 子句原因是,WHERE 关键字无法与聚合函数一起使用。HAVING 子句可以让我们筛选分组后的各组数据。

        HAVING子句用于指定过滤分组结果(GROUP BY)或聚合计算结果的条件。

2)HAVING语法:

        HAVING bool_expression

3)关键字的执行顺序问题

        select(5)...from(1)...where(2)...group by(3)...order by(6)...having(4)...//顺序不能颠倒

4)案例编写

        查询工资总和大于9000的部门编号以及工资和:
        SELECT `deptno`,SUM(sal) AS sumSal FROM emp GROUP BY deptno HAVING sumSal>20000;

注:having与where的区别:

        1)having是在分组后对数据进行过滤.

              where是在分组前对数据进行过滤

        2)having后面可以使用分组函数(统计函数)

              where后面不可以使用分组函数。

        WHERE是对分组前记录的条件,如果某行记录没有满足WHERE子句的条件,那么这行记录不会参加分组;而HAVING是对分组后数据的约束。

3、LIMIT

1)什么是 LIMIT 子句

        LIMIT用来限定查询结果的起始行,以及总行数,强制 SELECT 语句返回指定的记录数。可以用来分页。

2)LIMIT语法

        select...from...limit...

3)Limit子句参数用法

        Limit接受一个或两个数字参数。参数必须是一个整数常量。

        一个参数:它表示返回最大的记录数。从第一行开始算。

        两个参数:参数1是指定第一个返回的记录行的索引+1,参数2是最后返回最大的记录数

4)查询顺序

        查询语句书写顺序:select – from- where- group by- having- order by-limit

        查询语句执行顺序:from - where -group by - having - select - order by-limit  

5)Limit子句在MySQL中的性能分析

        Limit子句高效率:避免全表扫描,提高查询效率。

        mysql的limit给分页带来了极大的方便,但数据量大的时候,limit的性能就急剧下降。

6)案例编写

        查询5行记录,起始行从0开始
        SELECT * FROM emp LIMIT 0,5;

        查询10行记录,起始行从3开始
        SELECT * FROM emp LIMIT 3,10;


        码文不易,本篇文章就介绍到这里,如果想要学习更多数据库系列知识,请关注博主,博主带你零基础学习Java知识。与此同时,对于日常生活有困扰的朋友,欢迎阅读我的第四栏目:《国学周更—心性养成之路》,学习技术的同时,我们也注重了心性的养成。

来源地址:https://blog.csdn.net/hh867308122/article/details/127403717

您可能感兴趣的文档:

--结束END--

本文标题: 6、【MySQL】使用DQL命令查询数据(二)

本文链接: https://www.lsjlt.com/news/398432.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 6、【MySQL】使用DQL命令查询数据(二)
    ✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:乐趣国学的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:MySQL数据库学习之旅 ...
    99+
    2023-09-07
    mysql 数据库 sql
  • 怎么在MySQL中使用DQL命令查询数据
    怎么在MySQL中使用DQL命令查询数据?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。SELECT 语法SELECT [AL...
    99+
    2024-04-02
  • 怎么使用DQL查询数据
    这篇文章将为大家详细讲解有关怎么使用DQL查询数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。使用DQL查询数据DQL语言DQL( Data Query Languag...
    99+
    2024-04-02
  • DQL数据查询语句使用示例
    目录DQL指定查询字段where条件子句联表查询分页和排序子查询DQL (Data Query Language:数据查询语言) 所有的查询操作都要用到它 select简单的查询,复杂的查询都要用到它...
    99+
    2022-12-22
    DQL数据查询 SQL数据查询
  • MySQL中DQL数据查询语句怎么写
    这篇文章将为大家详细讲解有关MySQL中DQL数据查询语句怎么写,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。目录一、基础查询二、条件查询三、排序查询四、常见函数五、分组...
    99+
    2024-04-02
  • mysql查询数据库的命令是什么
    当使用 MySQL 查询数据库时,可以通过 SELECT 语句来检索数据。以下是一个更详细的示例: 查询单个列数据 SELE...
    99+
    2024-03-11
    mysql 数据库
  • mysql数据库查询基础命令详解
    目录1.启动数据库命令行客户端2.查询数据库3.进入数据库3.查询所在数据库中所有表信息4.查询数据库某张表结构5.简单select查询语句(单张表)5.1查询单张表所有数据5.2 LIMIT限制查询结果返回数...
    99+
    2022-11-19
    mysql数据库查询命令 mysql数据库查询 mysql数据库命令
  • MySQL数据库——复杂查询(二)
    目录 第1关 查询学生平均分 一、本关任务:根据提供的表和数据,查询平均成绩小于60分的同学的学生编号(s_id)、学生姓名(s_name)和平均成绩(avg_score),要求平均成绩保留2位小数点。(注意:包括有成绩的和无成绩的) 二、...
    99+
    2023-10-28
    数据库 mysql
  • mysql查询语句select命令怎么使用
    在MySQL中,使用SELECT命令可以从数据库中检索数据。其基本语法如下: SELECT column1, column2...
    99+
    2024-04-09
    mysql
  • sql中查询重复数据的命令
    sql 中查询重复数据的方法是:使用 group by 子句对所需列进行分组。使用 having 子句指定重复数据的过滤条件。 SQL 查询重复数据的命令 如何查询重复数据 ...
    99+
    2024-04-28
    聚合函数
  • linux的查询命令怎么使用
    Linux的查询命令有很多,以下是一些常用的查询命令及其使用方法:1. man命令:用于查询Linux系统中的命令、函数、配置文件等...
    99+
    2023-05-13
    linux的查询命令 linux
  • redis中5种数据基础查询命令
    目录(一)key查询1.查询所有key2.查询包含某个字符的key3.查询key的类型4.查询某个键是否存在(二)5种数据类型查询命令1.string查询2.hash查询3.set查询4.zset查询5.list查询(一...
    99+
    2023-04-13
    redis 查询命令 redis 查询
  • SQL 基础之使用子查询检索数据(二十二)
    多列子查询where (manager_id, department_id) in子查询100 90102 60124 50主查询的每行都与多行和多列的子查询进行比较列的比较多列的比较,包含子查询...
    99+
    2024-04-02
  • MySQL数据迁移使用MySQLdump命令
    该方案优点是简单,容易手上;缺点是停机时间较长。 因此它适用于数据量不大,或者允许停机的时间较长,并且在这个时间范围内能够完成。 以下是MySQLdump命令的一些用法: 1.将整个数据库的数据及建表文件导...
    99+
    2024-04-02
  • mysql怎么使用数据库命令
    mysql 命令包括:1. 数据操作语言(dml):select、insert、update、delete;2. 数据定义语言(ddl):create、alter、drop;3...
    99+
    2024-04-14
    mysql python
  • 如何使用Workbench查询mysql数据库
    这期内容当中小编将会给大家带来有关如何使用Workbench查询mysql数据库,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。首先通过点击电脑开始→选择Mysql Wor...
    99+
    2024-04-02
  • mysql怎么使用索引查询数据
    要使用索引查询数据,可以按照以下步骤进行: 1、创建索引:首先,在需要加索引的列上创建索引。你可以通过使用CREATE INDEX语...
    99+
    2024-04-09
    mysql
  • 怎么使用mysql进行数据查询
    要使用MySQL进行数据查询,您需要按照以下步骤进行操作: 连接到MySQL数据库。可以使用命令行或图形界面工具连接到MySQL...
    99+
    2024-04-09
    mysql
  • MySQL数据查询中如何使用集合/聚合函数查询
    小编给大家分享一下MySQL数据查询中如何使用集合/聚合函数查询,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!MySQL聚合函数如下:函数作用avg()返回某列的平均值count()返回某...
    99+
    2024-04-02
  • sql中实现数据查询的命令是哪个
    在 sql 中,用于数据查询的命令是 select,语法为 select [column1, column2, ...] from table_name [where...
    99+
    2024-05-07
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作