单表查询
单表查询语法:
select distinct 字段1,字段2... from 表名
where 条件
group by field
having筛选
order by
关键字执行的优先级:
- 1.找到表:from
- 2.拿着where指定的约束条件,去文件/表中取出一条条记录
- 3.将取出的一条条记录进行分组group by,如果没有group by,则整体作为一组
- 4.执行select(去重)
- 5.将分组的结果进行having过滤
- 6.将结果按条件排序:order by
- 7.限制结果的显示条数
简单查询:
company.employee
员工id id int
姓名 emp_name varchar
性别 sex enum
年龄 age int
入职日期 hire_date date
岗位 post varchar
职位描述 post_comment varchar
薪水 salary double
办公室 office int
部门编号 depart_id int
# 创建表
create table employee(
id int not null unique auto_increment,
emp_name varchar(20) not null,
sex enum('male','female') not null default 'male',
age int(3) unsigned not null default 28,
hire_date date not null,
post varchar(50),
post_comment varchar(100),
salary double(15,2),
office int,
depart_id int
); # 查看表结构
mysql> desc employee;
+--------------+-----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-----------------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| emp_name | varchar(20) | NO | | NULL | |
| sex | enum('male','female') | NO | | male | |
| age | int(3) unsigned | NO | | 28 | |
| hire_date | date | NO | | NULL | |
| post | varchar(50) | YES | | NULL | |
| post_comment | varchar(100) | YES | | NULL | |
| salary | double(15,2) | YES | | NULL | |
| office | int(11) | YES | | NULL | |
| depart_id | int(11) | YES | | NULL | |
+--------------+-----------------------+------+-----+---------+----------------+
10 rows in set (0.09 sec) #插入记录
#三个部门:教学,销售,运营
insert into employee(emp_name,sex,age,hire_date,post,salary,office,depart_id) values
('彭哈哈','male',18,'','教学',7300.33,401,1),
('赵晓明','male',78,'','教学',1000000.31,401,1),
('爱祖国','male',81,'','教学',8300,401,1),
('延阻聚','male',73,'','教学',3500,401,1),
('陈继承','male',28,'','教学',2100,401,1),
('李小荷','female',18,'','教学',9000,401,1),
('赵晓明','male',18,'','教学',30000,401,1),
('高富帅','male',48,'','教学',10000,401,1), ('菟丝子','female',48,'','销售',3000.13,402,2),
('张晓敏','female',38,'','销售',2000.35,402,2),
('冯小刚','female',18,'','销售',1000.37,402,2),
('老小月','female',18,'','销售',3000.29,402,2),
('格格','female',28,'','销售',4000.33,402,2), ('彭消息','male',28,'','运营',10000.13,403,3),
('张国','male',18,'','运营',20000,403,3),
('小路小','female',18,'','运营',19000,403,3),
('罗超','male',18,'','运营',18000,403,3),
('张罗好','female',18,'','运营',17000,403,3);
建表
只查看某张表指定的字段:
select 字段1,字段2,字段3,字段n from 表名;
mysql> select id, emp_name, sex, age from employee; #查看员工姓名性别年龄
+----+-----------+--------+-----+
| id | emp_name | sex | age |
+----+-----------+--------+-----+
| 19 | 彭哈哈 | male | 18 |
| 20 | 彭哈哈 | male | 18 |
| 21 | 赵晓明 | male | 78 |
| 22 | 爱祖国 | male | 81 |
| 23 | 延阻聚 | male | 73 |
| 24 | 陈继承 | male | 28 |
| 25 | 李小荷 | female | 18 |
| 26 | 赵晓明 | male | 18 |
| 27 | 高富帅 | male | 48 |
| 28 | 菟丝子 | female | 48 |
| 29 | 张晓敏 | female | 38 |
| 30 | 冯小刚 | female | 18 |
| 31 | 老小月 | female | 18 |
| 32 | 格格 | female | 28 |
| 33 | 彭消息 | male | 28 |
| 34 | 张国 | male | 18 |
| 35 | 小路小 | female | 18 |
| 36 | 罗超 | male | 18 |
| 37 | 张罗好 | female | 18 |
+----+-----------+--------+-----+
19 rows in set (0.00 sec)
只查看指定的字段
查看整张表:
select * from 表名;
mysql> select * from employee; # 查看整张表
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
| id | emp_name | sex | age | hire_date | post | post_comment | salary | office | depart_id |
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
| 19 | 彭哈哈 | male | 18 | 2017-03-01 | 教学 | NULL | 7300.33 | 401 | 1 |
| 20 | 彭哈哈 | male | 18 | 2017-03-01 | 教学 | NULL | 7300.33 | 401 | 1 |
| 21 | 赵晓明 | male | 78 | 2015-03-02 | 教学 | NULL | 1000000.31 | 401 | 1 |
| 22 | 爱祖国 | male | 81 | 2013-03-05 | 教学 | NULL | 8300.00 | 401 | 1 |
| 23 | 延阻聚 | male | 73 | 2014-07-01 | 教学 | NULL | 3500.00 | 401 | 1 |
| 24 | 陈继承 | male | 28 | 2012-11-01 | 教学 | NULL | 2100.00 | 401 | 1 |
| 25 | 李小荷 | female | 18 | 2011-02-11 | 教学 | NULL | 9000.00 | 401 | 1 |
| 26 | 赵晓明 | male | 18 | 1900-03-01 | 教学 | NULL | 30000.00 | 401 | 1 |
| 27 | 高富帅 | male | 48 | 2010-11-11 | 教学 | NULL | 10000.00 | 401 | 1 |
| 28 | 菟丝子 | female | 48 | 2015-03-11 | 销售 | NULL | 3000.13 | 402 | 2 |
| 29 | 张晓敏 | female | 38 | 2010-11-01 | 销售 | NULL | 2000.35 | 402 | 2 |
| 30 | 冯小刚 | female | 18 | 2011-03-12 | 销售 | NULL | 1000.37 | 402 | 2 |
| 31 | 老小月 | female | 18 | 2016-05-13 | 销售 | NULL | 3000.29 | 402 | 2 |
| 32 | 格格 | female | 28 | 2017-01-27 | 销售 | NULL | 4000.33 | 402 | 2 |
| 33 | 彭消息 | male | 28 | 2016-03-11 | 运营 | NULL | 10000.13 | 403 | 3 |
| 34 | 张国 | male | 18 | 1997-03-12 | 运营 | NULL | 20000.00 | 403 | 3 |
| 35 | 小路小 | female | 18 | 2013-03-11 | 运营 | NULL | 19000.00 | 403 | 3 |
| 36 | 罗超 | male | 18 | 2015-04-11 | 运营 | NULL | 18000.00 | 403 | 3 |
| 37 | 张罗好 | female | 18 | 2014-05-12 | 运营 | NULL | 17000.00 | 403 | 3 |
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
19 rows in set (0.00 sec)
查看整张表
避免重复distinct:
select distinct post from 表名;
去重功能将重复的去掉只留一个显示
mysql> select distinct post from employee; #查看部门
+--------+
| post |
+--------+
| 教学 |
| 销售 |
| 运营 |
+--------+
distinct避免重复
四则运算查询:
需求:查看所有员工的年薪,薪资乘于12就等于年薪
mysql> select emp_name, salary * 12 FROM employee; #工资乘于12
+-----------+-------------+
| emp_name | salary * 12 |
+-----------+-------------+
| 彭哈哈 | 87603.96 |
| 彭哈哈 | 87603.96 |
| 赵晓明 | 12000003.72 |
| 爱祖国 | 99600.00 |
| 延阻聚 | 42000.00 |
| 陈继承 | 25200.00 |
| 李小荷 | 108000.00 |
| 赵晓明 | 360000.00 |
| 高富帅 | 120000.00 |
| 菟丝子 | 36001.56 |
| 张晓敏 | 24004.20 |
| 冯小刚 | 12004.44 |
| 老小月 | 36003.48 |
| 格格 | 48003.96 |
| 彭消息 | 120001.56 |
| 张国 | 240000.00 |
| 小路小 | 228000.00 |
| 罗超 | 216000.00 |
| 张罗好 | 204000.00 |
+-----------+-------------+
19 rows in set (0.00 sec)
四则运算乘法
需求:查看所有员工的年薪,薪资乘于12就等于年薪并且把字段salary改成Annual_salary
mysql> SELECT emp_name, salary*12 AS Annual_salary FROM employee;
+-----------+---------------+
| emp_name | Annual_salary |
+-----------+---------------+
| 彭哈哈 | 87603.96 |
| 彭哈哈 | 87603.96 |
| 赵晓明 | 12000003.72 |
| 爱祖国 | 99600.00 |
| 延阻聚 | 42000.00 |
| 陈继承 | 25200.00 |
| 李小荷 | 108000.00 |
| 赵晓明 | 360000.00 |
| 高富帅 | 120000.00 |
| 菟丝子 | 36001.56 |
| 张晓敏 | 24004.20 |
| 冯小刚 | 12004.44 |
| 老小月 | 36003.48 |
| 格格 | 48003.96 |
| 彭消息 | 120001.56 |
| 张国 | 240000.00 |
| 小路小 | 228000.00 |
| 罗超 | 216000.00 |
| 张罗好 | 204000.00 |
+-----------+---------------+
19 rows in set (0.06 sec)
乘法加改字段
定义格式显示:
concat()函数用于连接字符串
select concat('字符串1',字段,'字符串',字段) from 表名;
mysql> select concat('姓名:',emp_name,'年薪',salary*12) from employee;
+-------------------------------------------------+
| concat('姓名:',emp_name,'年薪',salary*12) |
+-------------------------------------------------+
| 姓名:彭哈哈年薪87603.96 |
| 姓名:彭哈哈年薪87603.96 |
| 姓名:赵晓明年薪12000003.72 |
| 姓名:爱祖国年薪99600.00 |
| 姓名:延阻聚年薪42000.00 |
| 姓名:陈继承年薪25200.00 |
| 姓名:李小荷年薪108000.00 |
| 姓名:赵晓明年薪360000.00 |
| 姓名:高富帅年薪120000.00 |
| 姓名:菟丝子年薪36001.56 |
| 姓名:张晓敏年薪24004.20 |
| 姓名:冯小刚年薪12004.44 |
| 姓名:老小月年薪36003.48 |
| 姓名:格格年薪48003.96 |
| 姓名:彭消息年薪120001.56 |
| 姓名:张国年薪240000.00 |
| 姓名:小路小年薪228000.00 |
| 姓名:罗超年薪216000.00 |
| 姓名:张罗好年薪204000.00 |
+-------------------------------------------------+
19 rows in set (0.02 sec)
concat()字符串连接输出
concat_ws()第一个参数为分隔符
需求:查看每个员工的年薪,格式为:姓名:年薪
mysql> select concat_ws(':', emp_name, salary * 12) AS Annual_salary from employee; #第一个数为分隔符
+-----------------------+
| Annual_salary |
+-----------------------+
| 彭哈哈:87603.96 |
| 彭哈哈:87603.96 |
| 赵晓明:12000003.72 |
| 爱祖国:99600.00 |
| 延阻聚:42000.00 |
| 陈继承:25200.00 |
| 李小荷:108000.00 |
| 赵晓明:360000.00 |
| 高富帅:120000.00 |
| 菟丝子:36001.56 |
| 张晓敏:24004.20 |
| 冯小刚:12004.44 |
| 老小月:36003.48 |
| 格格:48003.96 |
| 彭消息:120001.56 |
| 张国:240000.00 |
| 小路小:228000.00 |
| 罗超:216000.00 |
| 张罗好:204000.00 |
+-----------------------+
19 rows in set (0.00 sec)
concat_ws
where约束:
where字句中可以使用:
- 1. 比较运算符:> < >= <= <> !=
- 2. between 80 and 100 值在80到100之间
- 3. in(80,90,100) 值是80或90或100
- 4. like 'e%'
- 通配符可以是%或_,
- %表示任意多字符
- _表示一个字符
- 5. 逻辑运算符:在多个条件直接可以使用逻辑运算符 and or not #与或非
条件查询:
select 字段 from 表名
where 字段 = ...;
需求:查询员工表工资等于20000的
select emp_name , salary from employee where salary = 20000;
mysql> select emp_name , salary from employee where salary = 20000;
+----------+----------+
| emp_name | salary |
+----------+----------+
| 张国 | 20000.00 |
+----------+----------+
1 row in set (0.00 sec)
单条件查询
多条件查询:
需求:查询教学部工资大于10000的
SELECT emp_name,salary FROM employee
WHERE post='teacher' AND salary>10000;
mysql> SELECT emp_name,salary FROM employee
-> WHERE post='教学' AND salary>10000;
+-----------+------------+
| emp_name | salary |
+-----------+------------+
| 赵晓明 | 1000000.31 |
| 赵晓明 | 30000.00 |
+-----------+------------+
2 rows in set (0.00 sec)
多条件查询
关键字between and查询:
需求:查询员工薪资15000至20000的人
ysql> select emp_name,salary from employee
-> where salary between 15000 and 20000;
+-----------+----------+
| emp_name | salary |
+-----------+----------+
| 张国 | 20000.00 |
| 小路小 | 19000.00 |
| 罗超 | 18000.00 |
| 张罗好 | 17000.00 |
+-----------+----------+
4 rows in set (0.00 sec)
between and
关键字is null(判断某个字段是否为null不能用=号,需要用is)
mysql>SELECT emp_name,post_comment FROM employee
-> WHERE post_comment IS NULL;
+-----------+--------------+
| emp_name | post_comment |
+-----------+--------------+
| 彭哈哈 | NULL |
| 彭哈哈 | NULL |
| 赵晓明 | NULL |
| 爱祖国 | NULL |
| 延阻聚 | NULL |
| 陈继承 | NULL |
| 李小荷 | NULL |
| 赵晓明 | NULL |
| 高富帅 | NULL |
| 菟丝子 | NULL |
| 张晓敏 | NULL |
| 冯小刚 | NULL |
| 老小月 | NULL |
| 格格 | NULL |
| 彭消息 | NULL |
| 张国 | NULL |
| 小路小 | NULL |
| 罗超 | NULL |
| 张罗好 | NULL |
+-----------+--------------+
19 rows in set (0.00 sec)
is null
关键字in集合查询:
#查询工资为3000或3500,4000或9000 mysql>SELECT emp_name,salary FROM employee
->WHERE salary=3000 OR salary=3500 OR salary=4000 OR salary=9000;
+-----------+---------+
| emp_name | salary |
+-----------+---------+
| 延阻聚 | 3500.00 |
| 李小荷 | 9000.00 |
+-----------+---------+
2 rows in set (0.00 sec) mysql>SELECT emp_name,salary FROM employee
->WHERE salary IN (3000,3500,4000,9000) ;
+-----------+---------+
| emp_name | salary |
+-----------+---------+
| 延阻聚 | 3500.00 |
| 李小荷 | 9000.00 |
+-----------+---------+
2 rows in set (0.03 sec) mysql> SELECT emp_name,salary FROM employee -> WHERE salary NOT IN (3000,3500,4000,9000) ; #not不寻找某某或。。。 +-----------+------------+ | emp_name | salary | +-----------+------------+ | 彭哈哈 | 7300.33 | | 彭哈哈 | 7300.33 | | 赵晓明 | 1000000.31 | | 爱祖国 | 8300.00 | | 陈继承 | 2100.00 | | 赵晓明 | 30000.00 | | 高富帅 | 10000.00 | | 菟丝子 | 3000.13 | | 张晓敏 | 2000.35 | | 冯小刚 | 1000.37 | | 老小月 | 3000.29 | | 格格 | 4000.33 | | 彭消息 | 10000.13 | | 张国 | 20000.00 | | 小路小 | 19000.00 | | 罗超 | 18000.00 | | 张罗好 | 17000.00 | +-----------+------------+ 17 rows in set (0.00 sec)
集合查询in
关键字like模糊查询:
通配符'%'表示任意长度的任意内容
mysql>SELECT * FROM employee
->WHERE emp_name LIKE '张%'; #以张开头后面不限都能查询出来
+----+-----------+--------+-----+------------+--------+--------------+----------+--------+-----------+
| id | emp_name | sex | age | hire_date | post | post_comment | salary | office | depart_id |
+----+-----------+--------+-----+------------+--------+--------------+----------+--------+-----------+
| 29 | 张晓敏 | female | 38 | 2010-11-01 | 销售 | NULL | 2000.35 | 402 | 2 |
| 34 | 张国 | male | 18 | 1997-03-12 | 运营 | NULL | 20000.00 | 403 | 3 |
| 37 | 张罗好 | female | 18 | 2014-05-12 | 运营 | NULL | 17000.00 | 403 | 3 |
+----+-----------+--------+-----+------------+--------+--------------+----------+--------+-----------+
3 rows in set (0.00 sec)
%
通配符:'_'一个字符长度的任意内容
mysql> SELECT * FROM employee
-> WHERE emp_name LIKE '赵__';
+----+-----------+------+-----+------------+--------+--------------+------------+--------+-----------+
| id | emp_name | sex | age | hire_date | post | post_comment | salary | office | depart_id |
+----+-----------+------+-----+------------+--------+--------------+------------+--------+-----------+
| 21 | 赵晓明 | male | 78 | 2015-03-02 | 教学 | NULL | 1000000.31 | 401 | 1 |
| 26 | 赵晓明 | male | 18 | 1900-03-01 | 教学 | NULL | 30000.00 | 401 | 1 |
+----+-----------+------+-----+------------+--------+--------------+------------+--------+-----------+
2 rows in set (0.05 sec)
-
聚合函数:聚合函数聚合的是组的内容,若是没有分组,则默认一组
- count 求个数
- max 求最大值
- min 求最小值
- sum 求和
- avg 求平均
mysql> select count( * ) from employee; #求雇员表的个数
+------------+
| count( * ) |
+------------+
| 19 |
+------------+
1 row in set (0.00 sec) mysql> select max(salary) from employee; #求雇员表里的薪资最大值
+-------------+
| max(salary) |
+-------------+
| 1000000.31 |
+-------------+
1 row in set (0.00 sec) mysql> select min(salary) from employee; #求雇员表里的薪资最大值
+-------------+
| min(salary) |
+-------------+
| 1000.37 |
+-------------+
1 row in set (0.00 sec) mysql> select sum(salary) from employee; #求雇员表的和
+-------------+
| sum(salary) |
+-------------+
| 1174502.57 |
+-------------+
1 row in set (0.00 sec) mysql> select avg(salary) from employee; #求雇员表的平均值
+--------------+
| avg(salary) |
+--------------+
| 61815.924737 |
+--------------+
1 row in set (0.00 sec)
聚合函数示例
having:过滤语句
#!!!执行优先级从高到低:where > group by > having
#1. Where 发生在分组group by之前,因而Where中可以有任意字段,但是绝对不能使用聚合函数。
#2. Having发生在分组group by之后,因而Having中可以使用分组的字段,无法直接取到其他字段,可以使用聚合函数
- 在having条件中可以使用聚合函数,在where中不行
- 适合去筛选符合条件的某一组数据,而不是某一行数据
- 先分组再过滤 : 求平均薪资大于xx的部门,求人数大于xx的性别,求大于xx人的年龄段
- 查询各岗位内包含的员工个数小于2的岗位名、岗位内包含员工名字、个数
- group by post having count(id) < 2;
排序: order by
- 默认是升序 asc
- 降序 desc
- select * from employee order by age, salary desc;
- 优先根据age从小到大排,在age相同的情况下,再根据薪资从大到小排
#升序排序
mysql> select * from employee order by salary;
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
| id | emp_name | sex | age | hire_date | post | post_comment | salary | office | depart_id |
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
| 30 | 冯小刚 | female | 18 | 2011-03-12 | 销售 | NULL | 1000.37 | 402 | 2 |
| 29 | 张晓敏 | female | 38 | 2010-11-01 | 销售 | NULL | 2000.35 | 402 | 2 |
| 24 | 陈继承 | male | 28 | 2012-11-01 | 教学 | NULL | 2100.00 | 401 | 1 |
| 28 | 菟丝子 | female | 48 | 2015-03-11 | 销售 | NULL | 3000.13 | 402 | 2 |
| 31 | 老小月 | female | 18 | 2016-05-13 | 销售 | NULL | 3000.29 | 402 | 2 |
| 23 | 延阻聚 | male | 73 | 2014-07-01 | 教学 | NULL | 3500.00 | 401 | 1 |
| 32 | 格格 | female | 28 | 2017-01-27 | 销售 | NULL | 4000.33 | 402 | 2 |
| 19 | 彭哈哈 | male | 18 | 2017-03-01 | 教学 | NULL | 7300.33 | 401 | 1 |
| 20 | 彭哈哈 | male | 18 | 2017-03-01 | 教学 | NULL | 7300.33 | 401 | 1 |
| 22 | 爱祖国 | male | 81 | 2013-03-05 | 教学 | NULL | 8300.00 | 401 | 1 |
| 25 | 李小荷 | female | 18 | 2011-02-11 | 教学 | NULL | 9000.00 | 401 | 1 |
| 27 | 高富帅 | male | 48 | 2010-11-11 | 教学 | NULL | 10000.00 | 401 | 1 |
| 33 | 彭消息 | male | 28 | 2016-03-11 | 运营 | NULL | 10000.13 | 403 | 3 |
| 37 | 张罗好 | female | 18 | 2014-05-12 | 运营 | NULL | 17000.00 | 403 | 3 |
| 36 | 罗超 | male | 18 | 2015-04-11 | 运营 | NULL | 18000.00 | 403 | 3 |
| 35 | 小路小 | female | 18 | 2013-03-11 | 运营 | NULL | 19000.00 | 403 | 3 |
| 34 | 张国 | male | 18 | 1997-03-12 | 运营 | NULL | 20000.00 | 403 | 3 |
| 26 | 赵晓明 | male | 18 | 1900-03-01 | 教学 | NULL | 30000.00 | 401 | 1 |
| 21 | 赵晓明 | male | 78 | 2015-03-02 | 教学 | NULL | 1000000.31 | 401 | 1 |
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
19 rows in set (0.00 sec) #倒序排序
mysql> select * from employee order by salary asc;
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
| id | emp_name | sex | age | hire_date | post | post_comment | salary | office | depart_id |
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
| 30 | 冯小刚 | female | 18 | 2011-03-12 | 销售 | NULL | 1000.37 | 402 | 2 |
| 29 | 张晓敏 | female | 38 | 2010-11-01 | 销售 | NULL | 2000.35 | 402 | 2 |
| 24 | 陈继承 | male | 28 | 2012-11-01 | 教学 | NULL | 2100.00 | 401 | 1 |
| 28 | 菟丝子 | female | 48 | 2015-03-11 | 销售 | NULL | 3000.13 | 402 | 2 |
| 31 | 老小月 | female | 18 | 2016-05-13 | 销售 | NULL | 3000.29 | 402 | 2 |
| 23 | 延阻聚 | male | 73 | 2014-07-01 | 教学 | NULL | 3500.00 | 401 | 1 |
| 32 | 格格 | female | 28 | 2017-01-27 | 销售 | NULL | 4000.33 | 402 | 2 |
| 19 | 彭哈哈 | male | 18 | 2017-03-01 | 教学 | NULL | 7300.33 | 401 | 1 |
| 20 | 彭哈哈 | male | 18 | 2017-03-01 | 教学 | NULL | 7300.33 | 401 | 1 |
| 22 | 爱祖国 | male | 81 | 2013-03-05 | 教学 | NULL | 8300.00 | 401 | 1 |
| 25 | 李小荷 | female | 18 | 2011-02-11 | 教学 | NULL | 9000.00 | 401 | 1 |
| 27 | 高富帅 | male | 48 | 2010-11-11 | 教学 | NULL | 10000.00 | 401 | 1 |
| 33 | 彭消息 | male | 28 | 2016-03-11 | 运营 | NULL | 10000.13 | 403 | 3 |
| 37 | 张罗好 | female | 18 | 2014-05-12 | 运营 | NULL | 17000.00 | 403 | 3 |
| 36 | 罗超 | male | 18 | 2015-04-11 | 运营 | NULL | 18000.00 | 403 | 3 |
| 35 | 小路小 | female | 18 | 2013-03-11 | 运营 | NULL | 19000.00 | 403 | 3 |
| 34 | 张国 | male | 18 | 1997-03-12 | 运营 | NULL | 20000.00 | 403 | 3 |
| 26 | 赵晓明 | male | 18 | 1900-03-01 | 教学 | NULL | 30000.00 | 401 | 1 |
| 21 | 赵晓明 | male | 78 | 2015-03-02 | 教学 | NULL | 1000000.31 | 401 | 1 |
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
19 rows in set (0.00 sec) # 优先根据age从小到大排,在age相同的情况下,再根据薪资从大到小排
mysql> select * from employee order by age, salary desc;
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
| id | emp_name | sex | age | hire_date | post | post_comment | salary | office | depart_id |
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
| 26 | 赵晓明 | male | 18 | 1900-03-01 | 教学 | NULL | 30000.00 | 401 | 1 |
| 34 | 张国 | male | 18 | 1997-03-12 | 运营 | NULL | 20000.00 | 403 | 3 |
| 35 | 小路小 | female | 18 | 2013-03-11 | 运营 | NULL | 19000.00 | 403 | 3 |
| 36 | 罗超 | male | 18 | 2015-04-11 | 运营 | NULL | 18000.00 | 403 | 3 |
| 37 | 张罗好 | female | 18 | 2014-05-12 | 运营 | NULL | 17000.00 | 403 | 3 |
| 25 | 李小荷 | female | 18 | 2011-02-11 | 教学 | NULL | 9000.00 | 401 | 1 |
| 19 | 彭哈哈 | male | 18 | 2017-03-01 | 教学 | NULL | 7300.33 | 401 | 1 |
| 20 | 彭哈哈 | male | 18 | 2017-03-01 | 教学 | NULL | 7300.33 | 401 | 1 |
| 31 | 老小月 | female | 18 | 2016-05-13 | 销售 | NULL | 3000.29 | 402 | 2 |
| 30 | 冯小刚 | female | 18 | 2011-03-12 | 销售 | NULL | 1000.37 | 402 | 2 |
| 33 | 彭消息 | male | 28 | 2016-03-11 | 运营 | NULL | 10000.13 | 403 | 3 |
| 32 | 格格 | female | 28 | 2017-01-27 | 销售 | NULL | 4000.33 | 402 | 2 |
| 24 | 陈继承 | male | 28 | 2012-11-01 | 教学 | NULL | 2100.00 | 401 | 1 |
| 29 | 张晓敏 | female | 38 | 2010-11-01 | 销售 | NULL | 2000.35 | 402 | 2 |
| 27 | 高富帅 | male | 48 | 2010-11-11 | 教学 | NULL | 10000.00 | 401 | 1 |
| 28 | 菟丝子 | female | 48 | 2015-03-11 | 销售 | NULL | 3000.13 | 402 | 2 |
| 23 | 延阻聚 | male | 73 | 2014-07-01 | 教学 | NULL | 3500.00 | 401 | 1 |
| 21 | 赵晓明 | male | 78 | 2015-03-02 | 教学 | NULL | 1000000.31 | 401 | 1 |
| 22 | 爱祖国 | male | 81 | 2013-03-05 | 教学 | NULL | 8300.00 | 401 | 1 |
+----+-----------+--------+-----+------------+--------+--------------+------------+--------+-----------+
19 rows in set (0.00 sec)
order by排序