19.MySQL中的ORDER BY(排序 )
在项目开发时,为了使查询的数据结果满足用户的要求,通常会对查询出的数据进行上升或下降的排序。
MySQL提供了两种排序的方式,分别为单字段排序和多字段排序。
1.准备
CREATE DATABASE mahaiwuji;
USE mahaiwuji;
CREATE TABLE emp(
empno INT PRIMARY KEY,
ename VARCHAR(10),
sal INT,
deptno INT
) ENGINE = INNODB DEFAULT CHARSET = utf8;
INSERT INTO emp VALUES (1,'smith',1800,20);
INSERT INTO emp VALUES (2,'allen',1500,10);
INSERT INTO emp VALUES (3,'ward',1600,30);
INSERT INTO emp VALUES (4,'jones',2000,30);
INSERT INTO emp VALUES (5,'martin',1800,10);
INSERT INTO emp VALUES (6,'blake',1800,30);

2.语法
order by a --a升序
order by a asc --a升序
order by a desc --a降序
order by a,b --a和b都是升序
order by a,b desc --a升序,b降序
order by a desc,b --a降序,b升序
order by a desc,b desc --a和b都是降序
/*
1.如果不指定排序的标准,则默认是升序,升序用asc表示,默认可以不写
2.为一个字段指定的排序标准并不会对另一个字段产生影响
*/
3.实例演示
-- 按照sal升序排序
SELECT * FROM emp ORDER BY sal;
-- 等价于
SELECT * FROM emp ORDER BY sal ASC;

-- 按照sal降序排序
SELECT * FROM emp ORDER BY sal DESC;

-- 先按照deptno升序排序,如果deptno相同,在按照sal升序排序
SELECT * FROM emp ORDER BY deptno,sal;

-- 先按照deptno降序排序,如果deptno相同,在按照sal升序排序
SELECT * FROM emp ORDER BY deptno DESC,sal;

相关推荐
-
PHP8种变量类型的详细讲解2025-02-22 00:32:24
-
php+apache 和 php+nginx的区别2025-02-22 00:21:27
-
PHP:与workerman结合实现定时任务2025-02-22 00:15:57
-
Nginx的Rewrite规则与实例2025-02-22 00:15:39
-
MySql中身份证字段的简单脱敏介绍2025-02-22 00:15:36