mysql 数据操作 多表查询 准备

Posted minger_lcm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 数据操作 多表查询 准备相关的知识,希望对你有一定的参考价值。

 

 

为什么需要多表查询:

因为不可以把所有数据都放在一张表里

 

我们把不同数据存储 放在一张一张不同表 方便管理

但是数据还是一个整体,数据之间是有关联关系 那就要把分散的数据,合并到一起进行查询

 

 

 多表查询概念:

通过连接方式,把有关系的表拼成一个整体,进行关联查询。

就是把多张表记录 合并到一张表去查询

 

 

新建数据库

create database db6 charset=utf8;

 

use db6;

 

#建表
create table department(
id int,
name varchar(20) 
);

create table employee(
id int primary key auto_increment,
name varchar(20),
sex enum(male,female) not null default male,
age int,
dep_id int
);

 

#插入数据
insert into department values
(200,技术),
(201,人力资源),
(202,销售),
(203,运营);

insert into employee(name,sex,age,dep_id) values
(mike,male,18,200),
(alex,female,48,201),
(jack,male,38,201),
(yuanhao,female,28,202),
(liwenzhou,male,18,200),
(jingliyang,female,18,204)
;

 


#查看表结构和数据
mysql> desc department;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (1.30 sec)

 

mysql> desc employee;
+--------+-----------------------+------+-----+---------+----------------+
| Field  | Type                  | Null | Key | Default | Extra          |
+--------+-----------------------+------+-----+---------+----------------+
| id     | int(11)               | NO   | PRI | NULL    | auto_increment |
| name   | varchar(20)           | YES  |     | NULL    |                |
| sex    | enum(male,female) | NO   |     | male    |                |
| age    | int(11)               | YES  |     | NULL    |                |
| dep_id | int(11)               | YES  |     | NULL    |                |
+--------+-----------------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

 

mysql> select * from employee;
+----+------------+--------+------+--------+
| id | name       | sex    | age  | dep_id |
+----+------------+--------+------+--------+
|  1 | mike       | male   |   18 |    200 |
|  2 | alex       | female |   48 |    201 |
|  3 | jack       | male   |   38 |    201 |
|  4 | yuanhao    | female |   28 |    202 |
|  5 | liwenzhou  | male   |   18 |    200 |
|  6 | jingliyang | female |   18 |    204 |
+----+------------+--------+------+--------+
6 rows in set (0.32 sec)

mysql> select * from department;
+------+--------------+
| id   | name         |
+------+--------------+
|  200 | 技术         |
|  201 | 人力资源     |
|  202 | 销售         |
|  203 | 运营         |
+------+--------------+
4 rows in set (0.00 sec)

 

 
 

 

 

 


以上是关于mysql 数据操作 多表查询 准备的主要内容,如果未能解决你的问题,请参考以下文章

mysql数据操作之多表查询

linux12 -MYSQL数据库 -->07数据库多表查询

MySQL数据篇之多表操作-----保姆级教程

MySQL数据操作DQL:多表查询2

linux12 -MYSQL数据库 -->04 数据表单表多表查询--02

MySQL-04-笔记