④【数据查询】MySQL查询语句,拿来即用。

在这里插入图片描述

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~
个人主页:.29.的博客
学习社区:进去逛一逛~

在这里插入图片描述

MySQL查询操作

  • ④【数据查询】MySQL查询语句,拿来即用。
    • 1. 语法编写顺序 以及 执行顺序
    • 2. 基本查询
    • 3. 条件查询
    • 4. 聚合函数
    • 5. 分组查询
    • 6. 排序查询
    • 7. 分页查询


④【数据查询】MySQL查询语句,拿来即用。


1. 语法编写顺序 以及 执行顺序

DQL - 语法(编写顺序)

  • SELECT字段列表
    FROM表名列表
    WHERE条件列表
    GROUP BY分组字段列表
    HAVING分组后条件列表
    ORDER BY排序字段列表 排序规则
    LIMIT分页参数
    

执行顺序

  • FROM表名列表
    WHERE条件列表
    GROUP BY分组字段列表
    HAVING分组后条件列表
    SELECT字段列表
    ORDER BY排序字段列表 排序规则
    LIMIT分页参数
    
  • 查询表 ==> 分组前条件过滤 ==> 分组 ==> 分组后条件过滤 ==> 获取哪些字段 ==> 按照字段排序 ==> 分页显示




2. 基本查询

DQL - 基本查询

  • 基本查询

    • ①查询多个字段

    • SELECT 字段1,字段2,字段3... FROM 表名;
      
    • SELECT * FROM 表名;
      
    • ②设置别名

    • SELECT 字段1[AS 别名1],字段2[AS 别名2]... FROM 表名;
      
    • ③去除重复记录(DISTINCT关键字)

    • SELECT DISTINCT 字段1,字段2,字段3... FROM 表名;
      
    • SELECT DISTINCT * FROM 表名;
      



3. 条件查询

DQL - 条件查询

    • ①根据条件查询字段

    • SELECT 字段列表 FROM 表名 WHERE 条件;
      
  • 条件:

    • ①比较运算符:
    • >:大于
    • >=:大于等于
    • <:小于
    • <=:小于等于
    • =:等于
    • <>!=:不等于
    • BETWEEN...AND...:在某个范围以内(含最小、最大值)
    • IN(...):IN(…)括号内列表中的值,多选一
    • LIKE '占位符':模糊匹配(_匹配单个字符,%匹配任意个字符)
    • IS NULL:是NULL
    • ②逻辑运算符:
    • AND&&:并且(多个条件同时成立)
    • OR||:或者(多个条件任意一个成立)
    • NOT!:非,不是



4. 聚合函数

聚合函数

  • count():统计数量

  • max():求最大值

  • min():求最小值

  • avg():求平均值

  • sum():求和

  • 注意:null值不参与所有聚合函数的运算。

  • 使用聚合函数查询:

    • SELECT 聚合函数(字段列表) FROM 表名;
      
      • -- 演示:
        -- 员工表,表名:emp-- 统计emp员工表的员工数量
        SELECT COUNT(*) FROM emp;-- 统计员工的平均年龄,字段age表示年龄
        SELECT AVG(age) FROM emp;-- 统计员工的最大年龄
        SELECT MAX(age) FROM emp;-- 统计员工的最小年龄
        SELECT MIN(age) FROM emp;-- 统计广东地区员工的年龄之和
        -- 地区字段:workaddress
        SELECT SUM(age) FROM emp WHERE workaddress = '广东';
        



5. 分组查询

DQL - 分组查询

    • 分组查询数据:

    • SELECT 字段列表 FROM 表名 [WHERE 条件] GROUP BY 分组字段名 [HAVING 分组后过滤条件];
      
    • WHEREHAVING 区别:

      • 执行时机不同:where是分组之前进行过滤,不满足where的条件,不参与分组;而having是分组之后对结果进行过滤。
      • 判断条件不同:where不能使用聚合函数进行操作,而having可以
    • -- 演示-- 根据性别分组,统计男性员工和女性员工的数量
      -- 性别字段:sex
      SELECT sex,COUNT(*) 
      FROM emp 
      GROUP BY sex;-- 根据性别分组,统计男性员工和女性员工的平均年龄
      -- 性别字段:sex;年龄字段:age
      SELECT sex,AVG(age) 
      FROM emp 
      GROUP BY sex;-- 查询年龄小于45岁的员工,根据工作地址分组,获取员工数量大于3的工作地址
      SELECT workaddress,COUNT(*) 
      WHERE age < 45
      GROUP BY workaddress
      HAVING COUNT(*) > 3;
      



6. 排序查询

DQL - 排序查询

    • 查询并排序

    • SELECT 字段列表 FROM 表名 ORDER BY 字段1 排序规则1,字段2 排序规则2;
      
    • 排序规则:

    • ASC —— 升序(默认值)

    • DESC —— 降序

    • 若不指定排序规则,默认按照升序排序。

    • 如果指定了多个排序字段,排序的数据只有当第一个字段值相同时,才会根据第二个字段进行排序。




7. 分页查询

DQL - 分页查询

    • 对查询进行分页:

    • SELECT 字段列表 FROM 表名 LIMIT 起始索引,查询记录数;
      
    • 注意:

      • ①起始索引从0开始,起始索引 = (查询页码 - 1)* 每页显示的查询记录数
      • ②分页查询在不同的数据库中实现方式不同,MySQL是LIMIT
      • ③如果查询的是第一页数据,可以省略起始索引,直接LIMIT 10




在这里插入图片描述

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

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

相关文章

pytorch需要用到的模型和数据

关于常用的模型和数据&#xff1a; pytorch网站上有很多已经封装好的训练好的模型和数据&#xff0c;我们只需要进行网站下载即可地址如下&#xff1a;pytorch模型数据地址 进入后&#xff0c;往下滑&#xff0c;点击Datasets&#xff0c;挑选自己需要用的数据

阿里云+宝塔部署项目(Java+React)

阿里云服务器宝塔面板部署项目&#xff08;SpringBoot React&#xff09; 1. 上传所需的文件到服务器 比如jdk包和java项目的jar&#xff1a;这里以上传jar 为例&#xff0c;创建文件夹&#xff0c;上传文件&#xff1b; 在创建的文件夹下上传jar包 上传jdk 2. 配置jdk环境 3.…

Android 布局优化,看过来 ~

屏幕刷新机制 基本概念 刷新率&#xff1a;屏幕每秒刷新的次数&#xff0c;单位是 Hz&#xff0c;例如 60Hz&#xff0c;刷新率取决于硬件的固定参数。帧率&#xff1a;GPU 在一秒内绘制操作的帧数&#xff0c;单位是 fps。Android 采用的是 60fps&#xff0c;即每秒 GPU 最多…

AVL树的插入和删除

一.AVL树的四种旋转方式 以上是AVL树插入和删除时需要用到的四种旋转方式。为什么要旋转&#xff1f;因为树不平衡了,通过旋转使其再次平衡。 但是上面的四副图在旋转前就是平衡的&#xff0c;所以这样的旋转是没有意义的&#xff0c;重点在于理解旋转的方法。下面的插入和删除…

使用SQL分析数据科学职业发展趋势

大家好&#xff0c;在数据成为新石油的今天&#xff0c;了解数据科学职业的细微差别比以往任何时候都更加重要。无论你是正在寻找机会的数据爱好者&#xff0c;还是资深数据专家&#xff0c;使用SQL都可以让你深入了解数据科学就业市场。 本文可以带你了解哪些数据科学职位最具…

CTFSHOW 文件上传

web151 JS前端绕过 直接上传 png的图片马 然后抓包修改为php asystem("ls /var/www/html"); asystem("cat /var/www/html/flag.php"); web152 和151一样的方法也可以实现上传 asystem("ls /var/www/html"); asystem("cat /var/www/html…

springboot容器

1.主要指的是servlet容器 servlet组件由sevlet Filter Listener等 2.自动配置原理 通过ServletWebServerFactoryAutoConfiguration 配置这些内容 (自动配置类开始分析功能) conditionalOnclass开启条件 ServletRequest类 import导入嵌入式的tomcat Jetty等 这些是配置类&…

高效使用 PyMongo 进行 MongoDB 查询和插入操作

插入到集合中&#xff1a; 要将记录&#xff08;在MongoDB中称为文档&#xff09;插入到集合中&#xff0c;使用insert_one()方法。insert_one()方法的第一个参数是一个包含文档中每个字段的名称和值的字典。 import pymongomyclient pymongo.MongoClient("mongodb://l…

统计好书推荐:《统计至简》

电子版网址&#xff1a; Higkoo/Book5_Essentials-of-Probability-and-Statistics - 码云 - 开源中国 (gitee.com) GitHub - Visualize-ML/Book5_Essentials-of-Probability-and-Statistics: Book_5_《统计至简》 | 鸢尾花书&#xff1a;从加减乘除到机器学习&#xff1b;上…

Springboot 程序实现加密,禁止 jadx 反编译

在Spring Boot中实现程序加密和禁止jadx反编译是一个复杂的问题。虽然无法完全禁止反编译&#xff0c;但可以通过一些技术手段来提高代码的安全性。 以下是一些可能的措施&#xff1a; 使用混淆工具&#xff1a;使用Java代码混淆工具&#xff08;如ProGuard或YGuard&#xff0…

Linux各种版本安装详细步骤和root密码破解

文章目录 VMware新建虚拟机硬件设置设置虚拟网络DHCP设置(规划下IP地址)挂载ISO文件加电&#xff0c;开始安装虚拟机 root密码破解 VMware新建虚拟机 硬件设置 设置虚拟网络 编辑>虚拟网络编辑器>VMnet8(NAT模式) DHCP设置(规划下IP地址) 这样将来安装好的虚拟机的IP…

学者观察 | 联邦学习与区块链、大模型等新技术的融合与挑战-北京航空航天大学童咏昕

导语 当下&#xff0c;数据已成为经济社会发展中不可或缺的生产要素&#xff0c;正在发挥越来越大的价值。但是在数据使用过程中&#xff0c;由于隐私、合规或者无法完全信任合作方等原因&#xff0c;数据的拥有者并不希望彻底和他方共享数据。为解决原始数据自主可控与数据跨…