码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MySQL---排序与分页


    排序与分页

    • 排序数据
      • 排序规则
      • 单列排序
      • 多列排序
    • 分页
      • 格式
    • 拓展
    • 排序与分页练习
      • 1. 查询员工的姓名和部门号和年薪,按年薪降序 按姓名升序显示
      • 2. 选择工资不在 8000 到 17000 的员工的姓名和工资,按工资降序,显示第21到40位置的数据
      • 3. 查询邮箱中包含 e 的员工信息,并先按邮箱的字节数降序,再按部门号升序

    排序数据

    排序规则

    使用order by子句排序
    asc(不写的情况,默认为asc):升序
    desc:降序
    order by子句在select语句的结尾
    
    • 1
    • 2
    • 3
    • 4

    单列排序

    select last_name,job_id,department_id,hire_date
    from employees
    order by hire_date asc(asc可不写)升序
    或
    SELECT last_name,job_id,department_id,hire_date
    FROM employees
    ORDER BY hire_date DESC 降序
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    多列排序

    SELECT last_name,department_id,salary
    FROM employees
    ORDER BY department_id,salary DESC;
    
    可以使用不在SELECT列表中的列排序。
    在对多列进行排序的时候,首先排序的第一列必须有相同的列值,才会对第二列进行排序。如果第
    一列数据中所有值都是唯一的,将不再对第二列进行排序。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    分页

    格式

    LIMIT [位置偏移量,] 行数
    
    • 1
    SELECT *
    FROM employees
    LIMIT 0,10;
    
    • 1
    • 2
    • 3
    MySQL 8.0中可以使用“LIMIT 3 OFFSET 4”,意思是获取从第5条记录开始后面的3条记录,和“LIMIT
    4,3;”返回的结果相同。
    
    • 1
    • 2

    拓展

    在不同的 DBMS 中使用的关键字可能不同。在 MySQL、PostgreSQL、MariaDB 和 SQLite 中使用 LIMIT 关
    键字,而且需要放到 SELECT 语句的最后面。
    
    • 1
    • 2

    排序与分页练习

    1. 查询员工的姓名和部门号和年薪,按年薪降序 按姓名升序显示

    select last_name,department_id,salary * 12 annual_sal
    from employees
    order by annual_sal desc,last_name asc; 
    
    • 1
    • 2
    • 3

    2. 选择工资不在 8000 到 17000 的员工的姓名和工资,按工资降序,显示第21到40位置的数据

    SELECT last_name,salary
    FROM employees
    WHERE salary NOT BETWEEN 8000 AND 17000 
    ORDER BY salary DESC
    LIMIT 20,20;
    
    • 1
    • 2
    • 3
    • 4
    • 5

    3. 查询邮箱中包含 e 的员工信息,并先按邮箱的字节数降序,再按部门号升序

    select last_name,email,department_id
    from employees
    where email like '%e%'
    order by length(email) desc,department_id asc;
    或
    SELECT last_name,email,department_id
    FROM employees
    WHERE email REGEXP '[e]'
    ORDER BY LENGTH(email) DESC,department_id ASC;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
  • 相关阅读:
    Debian利用现有软件包或者光盘镜像搭建本地软件源
    【八】文件_File_Imgae——read_image()、write_image()算子
    Biotech - 环状 mRNA 的 LNP 递送系统 与 成环框架
    开始使用Filebeat
    Spirng 痛苦源码学习(二)——手写spring大致总框架(一)
    基于X86+FPGA+AI的智能仓储AGV机器人解决方案
    docker搭建redis哨兵集群并且整合springboot
    如何结合整洁架构和MVP模式提升前端开发体验(二) - 代码实现篇
    网络工程师----第三十六天
    浅谈UTON WALLET数字钱包及其安全性
  • 原文地址:https://blog.csdn.net/qq_53022114/article/details/126053265
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号