MYSQL_表查詢/合併查詢/內連接查詢

查看此篇以前建議先看表關係!!點我查看

#合併查詢//select *from…union all select *from …

#原有表
>>>
man:                woman:
+-----+--------+    +-----+--------+             
| mid | mname  |	| wid | wname  |
+-----+--------+	+-----+--------+
|   1 | 東尼   |	   |   1 | 波多   |
|   2 | 加藤   |	   |   2 | 早川   |
|   3 | 山形   |	   |   3 | 稚名   |
|   4 | 鈴木   |	   +-----+--------+
+-----+--------+
select *from man union all select *from woman;
>>>
+-----+--------+
| mid | mname  |
+-----+--------+
|   1 | 東尼   |
|   2 | 加藤   |
|   3 | 山形   |
|   4 | 鈴木   |
|   1 | 波多   |
|   2 | 早川   |
|   3 | 稚名   |
+-----+--------+

#內連結查詢

#先創建兩張表
create table emp(
id int primary key auto_increment,#編號
name varchar(32),#姓名
job varchar(32),#職位
mgr int,#上級編號
hiredate date, #入職時間
sal double,    #薪水
comm double,   #獎金
deptno  int  #所屬部門
);
#emp:
>>>
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| id       | int(11)     | NO   | PRI | NULL    | auto_increment |
| name     | varchar(32) | YES  |     | NULL    |                |
| job      | varchar(32) | YES  |     | NULL    |                |
| mgr      | int(11)     | YES  |     | NULL    |                |
| hiredate | date        | YES  |     | NULL    |                |
| sal      | double      | YES  |     | NULL    |                |
| comm     | double      | YES  |     | NULL    |                |
| deptno   | int(11)     | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
create table dept(
deptno int primary key auto_increment, #部門編號
dname varchar(32), #部門名稱
loc varchar(32) #部門地址
);
#dept:
>>>
+--------+-------------+------+-----+---------+----------------+
| Field  | Type        | Null | Key | Default | Extra          |
+--------+-------------+------+-----+---------+----------------+
| deptno | int(11)     | NO   | PRI | NULL    | auto_increment |
| dname  | varchar(32) | YES  |     | NULL    |                |
| loc    | varchar(32) | YES  |     | NULL    |                |
+--------+-------------+------+-----+---------+----------------+
#對dept 進行添加 //由於deptno 為自增長所以在此不做添加
insert into dept (dname,loc) values ('人力部','北京');
insert into dept (dname,loc) values ('市場部','上海');
insert into dept (dname,loc) values ('銷售部','廣州');
>>>
+--------+-----------+--------+
| deptno | dname     | loc    |
+--------+-----------+--------+
|      1 | 人力部    | 北京   |
|      2 | 市場部    | 上海   |
|      3 | 銷售部    | 廣州   |
+--------+-----------+--------+
#對emp 進行添加 //由於id 為自增長所以在此不做添加
insert into emp (name,job,hiredate,sal,comm,deptno) values ('伊澤','經理','2011-06-17',52000,2000,1);
#mgr記得添加
insert into emp (name,job,mgr,hiredate,sal,comm,deptno) values ('蔡八','實習生',3,'2018-06-2',11000,0,3);
#依序添加後
>>>
+----+--------+-----------+------+------------+-------+------+--------+
| id | name   | job       | mgr  | hiredate   | sal   | comm | deptno |
+----+--------+-----------+------+------------+-------+------+--------+
|  1 | 伊澤   | 經理      | NULL | 2011-06-17 | 52000 | 2000 |      1 |
|  2 | 大澤   | 副理      |    1 | 2011-06-17 | 42000 | 1000 |      1 |
|  3 | 吉澤   | 職員      |    2 | 2011-06-17 | 22000 |  100 |      1 |
|  4 | 未央   | 職員      |    2 | 2013-06-02 | 21000 |   50 |      2 |
|  5 | 蔡八   | 實習生    |    3 | 2018-06-02 | 11000 |    0 |      3 |
+----+--------+-----------+------+------------+-------+------+--------+
#對emp表與dept表連結此時會依據兩張表中所擁有的deptno類進行匹配//select *from...inner join...
select *from emp inner join dept;
>>>
#產生數據冗餘顯示列相加 行相乘  (8+3,5*3)11,15

在这里插入图片描述

#使用連接條件解決問題
select *from emp inner join dept on emp.deptno=dept.deptno;
>>>

在这里插入图片描述


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值