DQL

查询语法

select
    字段列表
from
    表名列表
where
    条件列表
group by
    分组字段
having
    分组后条件
order by
    排序字段
limit
    分页限定

基础查询

select 字段列表 from 表名;
select * from 表名; -- 查询所有字段
select distinc 字段列表 from 表名
as   -- as 也可以省略

条件查询

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

符号 功能 > 大于 < 小于 >= 大于等于

排序查询

select 字段列表 from 表名 order by 排序字段名1 排序方式1,  排序字段名2 排序方式2 ......;
asc   升序排列(默认值)
desc  降序排列
-- 当如果有多个排序条件,当前面的条件值一样时,才会根据第二条件进行排序

聚合函数

将一列数据只作为一个整体,进行纵向计算

函数名 功能 count(列名) 统计数量(一般选用不为null的列) max(列名) 最大值 min(列名) 最小值 sum(列名) 求和 avg(列名) 平均值

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

null 只不参加所有聚合函数的运算

分组查询

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

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

~ 执行时机不一样: where 是分组前进行限定,不满足分组条件,则不参与分组,而having 是分组之后对结果进行过滤

~可判断的条件不一样: where 不能对聚合函数进行判断, having 可以.

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

分页查询

select 字段列表 from 表名 limit 起始索引, 查询条目数

起始索引从 0 开始

计算公式: 起始索引 = (当前页码 – 1) * 每页显示的条数

tips:

~分页查询是MySQL的方言

~Oracle分页查询采用 rownumber

~SQL Server 分页查询使用 top

Original: https://www.cnblogs.com/wojiuyishui/p/16500372.html
Author: 我就一水
Title: DQL

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/578662/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • LeetCode 899.有序队列|字符串最小表示法的使用|求循环字符串的最小值

    Tags: #String For a string s, each time you can choose one of first k letters and put it t…

    Linux 2023年6月13日
    0105
  • 5.9 Linux Vim批量注释和自定义注释

    使用 Vim 编辑 Shell 脚本,在进行调试时,需要进行多行的注释,每次都要先切换到输入模式,在行首输入注释符 #再退回命令模式,非常麻烦。 连续行的注释其实可以用替换命令来完…

    Linux 2023年6月7日
    094
  • 前端以BASE64码的形式上传图片

    一直有一个很苦恼的问题困扰着铁柱兄,每次上传图片的时候前端要写一大堆js,然后后台也要写一堆java代码做处理。于是就在想,有没有简单又方便的方法把图片上传。今天算是搞定了。现在发…

    Linux 2023年6月13日
    085
  • linux mv 命令中断的解决办法

    背景:使用mv对服务器文件进行迁移的过程中,因为网络中断,所以迁移到一半被停止了。 现状:有一部分文件没有迁移完,但是文件夹已经存在了,重新mv提示文件夹已经存在,切已经有文件,所…

    Linux 2023年6月14日
    083
  • linux free命令available小于free值

    问题:前段时间在做服务器巡检时发现系统可用内存值小于空闲内存值 分析:查询网上各种资料,都说的是 available=free + buff/cache 这样一个大致计算方式,按这…

    Linux 2023年6月14日
    0176
  • Java基础系列–02_运算符和程序的语句

    运算符:(1)算术运算符:+,-,*,/,%,++,–(加、减、乘、除、取余、自增,自减)++和–的注意事项:a:他们的作用是自增或者自减b:使用1.单独使…

    Linux 2023年6月7日
    098
  • [20211105]索引分裂 块清除 日志增加.txt

    [20211105]索引分裂 块清除 日志增加.txt –//题目起的有点怪,只是我昨天在测试时遇到的怪问题,我通过测试环境演示出来。–//当非主键索引发生…

    Linux 2023年6月13日
    0101
  • 分布式数据库

    目录: 1.分布式数据库的核心功能 2.分布式数据库的优点 3.分布式数据库的缺点 4.市面上分布式数据库的产品分类 5.分布式数据库的搭建 随着互联网的发展,人类社会的数据量迅速…

    Linux 2023年6月6日
    069
  • 【滚动更新】C++ 八股文选集(没代码,纯应试)

    1,变量的声明和定义有什么区别。 声明不分配内存,定义分配内存。变量只能被定义一次,但可以被声明多次。 2,#ifdef、#else、#endif和#ifndef的作用。 预处理条…

    Linux 2023年6月13日
    099
  • Docker Manager for Docker Swarm deploy

    一、Swarm概述 Swarm是Docker公司在2014年12月初发布的一套较为简单的工具,用来管理Docker集群,它将一群Docker宿主机变成一个单一的,虚拟的主机。Swa…

    Linux 2023年6月14日
    0116
  • 实现批量自动部署Linux操作系统

    实战描述: xxx公司所服务的用户IT环境中有很多的Linux系统,品种也五花八门,有RHEL、Centos、OpenSUSE甚至还有测试环境使用的RockyLinux。当有大量的…

    Linux 2023年6月7日
    0112
  • 《kasini3000》批量修改linux被控机密码

    《卡死你3000》,是开源,免费,跨平台的devops批量脚本框架。 网址:码云家 https://gitee.com/chuanjiao10/kasini3000 批量生成密码之…

    Linux 2023年6月13日
    094
  • Python闭包

    前言 学习Python的单例实现的时候,遇到了下面这样的代码。很不理解为什么局部变量 _instance没有重新初始化。后来看到有人说这是闭包,于是又去了解了下 闭包。没想到闭包竟…

    Linux 2023年6月7日
    0100
  • Linux 搭建Apollo

    简介 Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用…

    Linux 2023年6月14日
    0128
  • Error: Unable to access jarfile 运行jar包报错

    1、可能是执行路径有误 错误 修改后,需使用绝对路径 2、决解1后,还报以下错误,就是你的安装的JDK与jar包中的JDK不是同一版本。idea中有自带的JDK与我们安装的JDK版…

    Linux 2023年6月14日
    0944
  • 【docker】python: can’t open file ‘helloworld.py’: [Errno 13] Permission denied

    运行容器提示权限问题 docker run -v $PWD/myapp:/usr/src/myapp -w /usr/src/myapp python:3.5 python hel…

    Linux 2023年6月7日
    0113
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球