Skip to content

Commit

Permalink
Mysql笔记更新
Browse files Browse the repository at this point in the history
  • Loading branch information
971230 committed Sep 17, 2024
1 parent e813cc4 commit 1449b6e
Showing 1 changed file with 117 additions and 62 deletions.
179 changes: 117 additions & 62 deletions docs/开始阅读/数据库/Mysql笔记.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: Mysql笔记
description: Mysql笔记-大学期间笔记
status: new
---

## 一.数据库概述
Expand Down Expand Up @@ -594,43 +595,65 @@ select count(*) from emp group by dept;
select id,name,job from emp group by job;
```

| `id` | `name` | `job` |
| :------: | :------: | :------: |
```shell
+----+----------+------+
| id | name | job |
+----+----------+------+
| 10 | 马化腾 | CEO |
| 4 | 赵三江 | 总监 |
| 7 | 苍蒹葭 | 校长 |
| 1 | 思想聚焦 | 讲师 |
| 4 | 赵三江 | 总监 |
| 7 | 苍蒹葭 | 校长 |
| 1 | 思想聚焦 | 讲师 |
+----+----------+------+
```

**显示职位和对应人数**

```sql
select count(*),job from emp group by job;
```

| `count(*)` | `job` |
| :------: | :------: |
| 1 | CEO |
| 1 | 总监 |
| 1 | 校长 |
| 9 | 讲师 |
```shell
+----------+------+
| count(*) | job |
+----------+------+
| 1 | CEO |
| 1 | 总监 |
| 1 | 校长 |
| 9 | 讲师 |
+----------+------+
```

### ㉞对emp表按照部门进行分组,求每个部门的最高薪资(不包含奖金),显示部门名称和最高薪资

```sql
select id,name,sal,dept from emp group by dept;
```

```shell
+----+----------+------+----------+
| id | name | sal | dept |
+----+----------+------+----------+
| 10 | 马化腾 | 5000 | NULL |
| 6 | 张正 | 3700 | 就业部 |
| 1 | 思想聚焦 | 1800 | 计科一部 |
+----+----------+------+----------+
```

**显示部门名称和最高薪资**

```sql
select max(sal), dept from emp group by dept;
```

| `max(sal)` | `dept` |
| :------: | :------: |
| 5000 | NULL |
| 4850 | 就业部 |
| 4500 | 计科一部 |
```shell
+----------+----------+
| max(sal) | dept |
+----------+----------+
| 5000 | NULL |
| 4850 | 就业部 |
| 4500 | 计科一部 |
+----------+----------+
```

<span class="yellow">↓↓↓排序查询↓↓↓</span>

Expand Down Expand Up @@ -1087,19 +1110,27 @@ select * from dept right join emp on emp.dept_id=dept.id;

!!! Info "db30库中有两张表:dept和emp表,两者有外键约束"
=== "dept表"
| id | name |
| :------: | :------: |
| 1 | 财务部 |
| 2 | 人事部 |
| 3 | 科技部 |
| 4 | 销售部 |
```shell
+----+--------+
| id | name |
+----+--------+
| 1 | 财务部 |
| 2 | 人事部 |
| 3 | 科技部 |
| 4 | 销售部 |
+----+--------+
```
=== "emp表"
| id | name | dept_id |
| :------: | :------: | :------: |
| 1 | 张三 | 1 |
| 2 | 李四 | 2 |
| 3 | 老王 | 3 |
| 4 | 赵六 | 4 |
```shell
+----+------+---------+
| id | name | dept_id |
+----+------+---------+
| 1 | 张三 | 1 |
| 2 | 李四 | 2 |
| 3 | 老王 | 3 |
| 4 | 赵六 | 5 |
+----+------+---------+
```

!!! Danger ""
**🚫🚫🚫认真比较一下下面六个查询语句和查询结果的对应关系🚫🚫🚫**
Expand All @@ -1108,65 +1139,89 @@ select * from dept right join emp on emp.dept_id=dept.id;
select * from dept left join emp on emp.dept_id=dept.id;
```

| id | name | id | name | dept_id |
| ------ | ------ | ------ | ------ | ------ |
| 1 | 财务部 | 1 | 张三 | 1 |
| 2 | 人事部 | 2 | 李四 | 2 |
| 3 | 科技部 | 3 | 老王 | 3 |
| 4 | 销售部 | NULL | NULL | NULL |
```shell
+----+--------+------+------+---------+
| id | name | id | name | dept_id |
+----+--------+------+------+---------+
| 1 | 财务部 | 1 | 张三 | 1 |
| 2 | 人事部 | 2 | 李四 | 2 |
| 3 | 科技部 | 3 | 老王 | 3 |
| 4 | 销售部 | NULL | NULL | NULL |
+----+--------+------+------+---------+
```

```sql
select * from emp left join dept on emp.dept_id=dept.id;
```

| id | name | dept_id | id | name |
| ------ | ------ | ------ | ------ | ------ |
| 1 | 张三 | 1 | 1 | 财务部 |
| 2 | 李四 | 2 | 2 | 人事部 |
| 3 | 老王 | 3 | 3 | 科技部 |
| 4 | 赵六 | 5 | NULL | NULL |
```shell
+----+------+---------+------+--------+
| id | name | dept_id | id | name |
+----+------+---------+------+--------+
| 1 | 张三 | 1 | 1 | 财务部 |
| 2 | 李四 | 2 | 2 | 人事部 |
| 3 | 老王 | 3 | 3 | 科技部 |
| 4 | 赵六 | 5 | NULL | NULL |
+----+------+---------+------+--------+
```

```sql
select * from dept right join emp on emp.dept_id=dept.id;
```

| id | name | id | name | dept_id |
| ------ | ------ | ------ | ------ | ------ |
| 1 | 财务部 | 1 | 张三 | 1 |
| 2 | 人事部 | 2 | 李四 | 2 |
| 3 | 科技部 | 3 | 老王 | 3 |
| NULL | NULL | 4 | 赵六 | 5 |
```shell
+------+--------+----+------+---------+
| id | name | id | name | dept_id |
+------+--------+----+------+---------+
| 1 | 财务部 | 1 | 张三 | 1 |
| 2 | 人事部 | 2 | 李四 | 2 |
| 3 | 科技部 | 3 | 老王 | 3 |
| NULL | NULL | 4 | 赵六 | 5 |
+------+--------+----+------+---------+
```

```sql
select * from emp right join dept on emp.dept_id=dept.id;
```

| id | name | dept_id | id | name |
| ------ | ------ | ------ | ------ | ------ |
| 1 | 张三 | 1 | 1 | 财务部 |
| 2 | 李四 | 2 | 2 | 人事部 |
| 3 | 老王 | 3 | 3 | 科技部 |
| NULL | NULL | NULL | 4 | 销售部 |
```shell
+------+------+---------+----+--------+
| id | name | dept_id | id | name |
+------+------+---------+----+--------+
| 1 | 张三 | 1 | 1 | 财务部 |
| 2 | 李四 | 2 | 2 | 人事部 |
| 3 | 老王 | 3 | 3 | 科技部 |
| NULL | NULL | NULL | 4 | 销售部 |
+------+------+---------+----+--------+
```

```sql
select * from emp inner join dept on emp.dept_id=dept.id;
```

| id | name | dept_id | id | name |
| ------ | ------ | ------ | ------ | ------ |
| 1 | 张三 | 1 | 1 | 财务部 |
| 2 | 李四 | 2 | 2 | 人事部 |
| 3 | 老王 | 3 | 3 | 科技部 |
```shell
+----+------+---------+----+--------+
| id | name | dept_id | id | name |
+----+------+---------+----+--------+
| 1 | 张三 | 1 | 1 | 财务部 |
| 2 | 李四 | 2 | 2 | 人事部 |
| 3 | 老王 | 3 | 3 | 科技部 |
+----+------+---------+----+--------+
```

```sql
select * from dept inner join emp on emp.dept_id=dept.id;
```

| id | name | id | name | dept_id |
| ------ | ------ | ------ | ------ | ------ |
| 1 | 财务部 | 1 | 张三 | 1 |
| 2 | 人事部 | 2 | 李四 | 2 |
| 3 | 科技部 | 3 | 老王 | 3 |
```shell
+----+--------+----+------+---------+
| id | name | id | name | dept_id |
+----+--------+----+------+---------+
| 1 | 财务部 | 1 | 张三 | 1 |
| 2 | 人事部 | 2 | 李四 | 2 |
| 3 | 科技部 | 3 | 老王 | 3 |
+----+--------+----+------+---------+
```

------

Expand Down

0 comments on commit 1449b6e

Please sign in to comment.