max.md 1.3 KB
Newer Older
M
Mars Liu 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
# 最大值练习

利用员工信息表:

```mysql
create table employee
(
    id     serial primary key,
    name   varchar(256),
    dept   varchar(256),
    salary decimal(12, 4)
);
```

Joe 做了一些关于 max 函数的练习,其中不正确的是:

M
Mars Liu 已提交
17 18
<hr/>

F
feilong 已提交
19
点击进入[MySQL实战练习环境](https://mydev.csdn.net/product/pod/new?image=cimg-centos7-skilltreemysql&connect=auto&create=auto&utm_source=skill){target="_blank"}。
F
feilong 已提交
20

F
feilong 已提交
21 22
* `show databases;` 列出所有数据库
* `show tables;` 列出所有表
M
Mars Liu 已提交
23

M
Mars Liu 已提交
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
## 答案

```mysql
select id, dept, max(salary) as salary, name 
from employee
group by dept
```

可以得到每个部门工资最高的员工的全部信息。

## 选项

### A

```mysql
select dept, max(salary) as salary
from employee
group by dept
```

可以得到每个部门的最高工资。

### B

```mysql
select max(salary) as salary
from employee
```

可以得到全部员工中最高的工资。

### C

```mysql
select dept, sum(salary)
from employee
group by dept
having max(salary) < 20000
```

可以得到员工最高工资不超过两万的部门及其总的工资开支

### D

```mysql
select dept, min(salary)
from employee
group by dept
having max(salary) > 50000
```

可以得到员工最高工资超过五万的部门,及其最低工资的清单