MySQL学习笔记 ------ 排序查询

一、语法

  SELECT 查询列表
  FROM 表名
【WHERE 筛选条件】
  ORDER BY 排序列表 【ASC}DESC】;#支持多个排序条件,以逗号分隔

二、特点

1、ASC :升序,如果不写默认升序
      DESC:降序

2、排序列表 支持 单个字段、多个字段、函数、表达式、别名;

3、ORDER BY 的位置一般放在查询语句的最后(除LIMIT语句之外);

三、案例分析

1、显示原表

SELECT * FROM employees;

2、按单个字段排序

SELECT * FROM employees ORDER BY salary DESC;

3、添加筛选条件再排序

  案例:查询部门编号>=90的员工信息,并按员工编号降序

SELECT *FROM employeesWHERE department_id>=90ORDER BY employee_id DESC;

4、按表达式排序

  案例:查询员工信息 按年薪降序

SELECT *,salary*12*(1+IFNULL(commission_pct,0))FROM employeesORDER BY salary*12*(1+IFNULL(commission_pct,0)) DESC;

5、按别名排序

  案例:查询员工信息 按年薪升序

SELECT *,salary*12*(1+IFNULL(commission_pct,0)) 年薪FROM employeesORDER BY 年薪 ASC;

6、按函数排序

  案例:查询员工名,并且按名字的长度降序

SELECT LENGTH(last_name),last_nameFROM employeesORDER BY LENGTH(last_name) DESC;

7、按多个字段排序

  案例:查询员工信息,要求先按工资降序,再按employee_id升序

SELECT *FROM employeesORDER BY salary DESC,employee_id ASC;

四、案例练习

1、查询员工的姓名和部门号和年薪,按年薪升序、按姓名升序

SELECT last_name,department_id,salary*12*(1+IFNULL(commission_pct,0)) AS 年薪FROM employeesORDER BY 年薪 ASC,last_name ASC;

2.选择工资不在8000到17000的员工的姓名和工资,按工资降序

SELECT last_name,salary,salary*12*(1+IFNULL(commission_pct,0)) 年薪FROM employeesWHERE salary NOT BETWEEN 8000 AND 17000ORDER BY 年薪 ASC,salary DESC;

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

SELECT *FROM employeesWHERE email LIKE '%e%'ORDER BY LENGTH(email) DESC,department_id;

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

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

相关文章

基于新浪微博海量用户行为数据、博文数据数据分析:包括综合指数、移动指数、PC指数三个指数

基于新浪微博海量用户行为数据、博文数据数据分析:包括综合指数、移动指数、PC指数三个指数 项目介绍 微指数是基于海量用户行为数据、博文数据,采用科学计算方法统计得出的反映不同事件领域发展状况的指数产品。微指数对于收录的关键词,在指…

Java运算符

大体上,与C语言差不多,不同的地方,我用红色字体标注了 算术运算符 1. 基本四则运算符:加减乘除模 ( - * / %) int a 10 ; int b 20 ; System . out . println ( a b ); // 30 System . out . println ( a - b…

数据结构--线性表2-1

目录 一、线性结构的定义 二、线性表的表示 三、顺序表的实现(或操作) 1、修改: 2、插入: 四、顺序表的运算效率分析:时间效率分析: 一、线性结构的定义 若结构时非空有限集,则有且仅有一个…

8 个线程池最佳实践和坑!使用不当直接生产事故!!

这篇文章我会简单总结一下我了解的使用线程池的时候应该注意的坑以及一些优秀的实践。拿来即用,美滋滋! 1、正确声明线程池 线程池必须手动通过 ThreadPoolExecutor 的构造函数来声明,避免使用Executors 类创建线程池,会有 OOM …

线性代数的学习和整理2:用EXCEL进行矩阵计算

目录 矩阵的各种概念 矩阵的维数 矩阵的基底 矩阵的列向量 矩阵的平直概念 矩阵的乘法的映射图 矩阵的秩 矩阵的乘法具有不可交换性 矩阵的模 矩阵的各种概念 矩阵的维数 (a1,a2)是2维的(a1,a2,a3)是3维的(a…

一文复习Java基础面试知识

申明:本人于公众号Java筑基期,CSDN先后发当前文章,标明原创,转载二次发文请注明转载公众号,另外请不要再标原创 ,注意违规 Java基础知识 1、基本数据类型 在Java中,共有八种基本数据类型&…

基于深度学习淡水鱼体重智能识别模型研究

工作原理为:首先对大众淡水鱼图片进行数据清洗并做标签分类,之后基于残差网络ResNet50模型进行有监督的分类识别训练,获取识别模型。其次通过搭建回归模型设计出体重模型,对每一类淡水鱼分别拟合出对应的回归方程,将获…

Ubuntu ImportError: No module named ‘_tkinter‘问题解决方式

尝试安装tkinter模块.出现以下问题 sudo pip3 install tkinter [sudo] password for Ns3: DEPRECATION: Python 3.5 reached the end of its life on September 13th, 2020. Please upgrade your Python as Python 3.5 is no longer maintained. pip 21.0 will drop support …

go 排序 接口排序

Go sort 包主要提供了三种排序能力: (1)基本类型切片排序; (2)任意类型切片排序 ; (3)任意数据结构排序 (实现接口方法排序) 一、基本类型切片排序 为了便于对常用数据…

Android OpenGL ES Camera2 实现实时抠图效果

前面文章人像抠图 + OpenGL ES 还能这样玩?没想到吧,我们介绍了利用人像抠图算法生成的 mask 图,然后结合 OpenGL 可以产生一些有趣的效果。 抠图技术应用很广泛,比如很多手机的相机自带“人像留色”滤镜:人体区域保留彩色,人体区域之外灰度化。所以人像留色的关键技术在…

java后端接口实现302跳转

正常来说,接口返回String是"redirect:"url或者“r:”url就能实现前端接收到返回后自动302.但是我在自己的一个项目中这么写了之后发现返回的是纯字符串,很奇怪。 最后发现,如果你的controller层有RestController注解,那…

【vue】Vue中解读关于this.$emit()的用法:

文章目录 一、Vue.sync修饰符与this.$emit(‘update:xxx‘, newXXX)二、this.$emit()传多个参数 一、Vue.sync修饰符与this.$emit(‘update:xxx‘, newXXX) 二、this.$emit()传多个参数

Qt Core学习日记——第八天QMetaObject(下)

QMetaObject::normalizedType 将名称规范化。 例如: QByteArray normType QMetaObject::normalizedType(" int const *"); // normType is now "const int*" QMetaObject::connect(const QObject *sender, int signal_index, const QObject…

Langchain 的 ConversationSummaryBufferMemory

Langchain 的 ConversationSummaryBufferMemory ConversationSummaryBufferMemory 在内存中保留最近交互的缓冲区,但不仅仅是完全刷新旧的交互,而是将它们编译成摘要并使用两者。但与之前的实现不同的是,它使用令牌长度而不是交互次数来确定何…

Jmeter性能测试配置

Jmeter检查点/断言 在上一章节中,我们通过调试脚本,通过人工验证脚本可以完成业务功能, 但在性能测试中,我们希望能通过自动验证脚本是否完成业务功能,在Jmeter 中我们可以通过检查点,也就是断言来实现自动…

【R3F】0.8drei使用

安装引用 npm install @react-three/drei@9.50 //这里是为了和之前版本对应控制器 通过 three/examples/jsm/controls/OrbitControls.js 引入使用 查看 通过 @react-three/drei 方式很简单直接添加上对应的节点就可以可以了 import {OrbitControls, TransformControls } from …

VR全景在酒店的发展状况如何?酒店该如何做营销?

现阶段,VR全景技术已经被酒店、民宿、旅游景区、房产楼盘、校园等行业所应用,每天都有不少人通过VR全景展示来了解酒店的设施环境,而酒店也可以借此机会,详细展示自身优势,更大范围吸引顾客。 VR酒店拥有真实、立体的全…

Git Gui相关术语

文章目录 Git Gui主界面相关术语- Amend Last Commit(修正最后一次提交)- Rescan(重新扫描)- Sign Off(签名)- Stage Changed Git Gui Commit菜单相关术语- Stage to Commit(暂存到提交&#xf…

C++ 左键实现 加线条,右键实现指定位置的点消失,现时删除线。

左键实现 加线条,右键实现指定位置的点消失,现时删除线。 // delpoint.cpp : 定义应用程序的入口点。 //#include "stdafx.h" #include "delpoint.h"#define MAX_LOADSTRING 100typedef struct tag_POINT{long x;long y;struct tag_…

opencv hand openpose

使用opencv c 来调用caffemodel 使用opencv 得dnn 模块调用 caffemodel得程序,图片自己输入就行,不做过多得解释,看代码清单。 定义手指关节点 const int POSE_PAIRS[20][2] { {0,1}, {1,2}, {2,3}, {3,4}, // thumb {0,5}, {5,6}, {6,7}…