MySql教程

【MySQL】5分钟学会数据库基本操作(二)

本文主要是介绍【MySQL】5分钟学会数据库基本操作(二),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!


文章目录

  • 前言
  • 一、多表查询
    • 1.数据准备
    • 2.笛卡尔积
    • 3.多表连接
  • 总结



前言

前面我们讲到了MySQL的单表操作,现在我们进入到MySQL的多表操作部分了,我们在这一章要
(1)学会使用**内连接**进行多表查询,以及能够使用**左外连接**和**右外连接**进行多表查询。
(2)理解什么是事务,如何在MySQL里面使用事务进行操作。
(3)理解幻读概念
(4)用DCL管理MySQL中的用户


提示:以下是本篇文章正文内容,下面案例可供参考

一、多表查询

1.数据准备

# 创建部门表create table dept(id int primary key auto_increment,name varchar(20) -- 部门名称)insert into dept (name) values ('开发部'),('市场部'),('财务部');# 创建员工表create table emp (
	id int primary key auto_increment,
	name varchar(10),
	gender char(1), -- 性别
	salary double, -- 工资
	join_date date, -- 入职日期
	dept_id int,
	foreign key (dept_id) references dept(id) -- 外键,关联部门表(部门表的主键))insert into emp(name,gender,salary,join_date,dept_id) values('孙悟空','男',7200,'2013-02-24',1);insert into emp(name,gender,salary,join_date,dept_id) values('猪八戒','男',3600,'2010-12-02',2);insert into emp(name,gender,salary,join_date,dept_id) values('唐僧','男',9000,'2008-08-08',2);insert into emp(name,gender,salary,join_date,dept_id) values('白骨精','女',5000,'2015-10-07',3);insert into emp(name,gender,salary,join_date,dept_id) values('蜘蛛精','女',4500,'2011-03-14',1);

2.笛卡尔积

会根据table1*table2做一个矩阵相乘的积,出来就是一个大的笛卡尔积表
原理:交叉联接返回左表中的所有行,左表中的每一行与右表中的所有行再一一组合

select * from table2, table2 ;

3.多表连接

为什么要连接?
因为在实际开发过程中,很多时候需要同时使用多个表中的数据

#直接多表连接,用from#SELECT 字段名 FROM 左表, 右表 WHERE 条件select t1.name, t1.sex, t1.age, t2.id 
from emp t1, dept t2where t1.id = t2.id; -- 筛选条件,避免笛卡尔积#inner可省略,on用来确定连接条件,where用来确定查询范围。#SELECT 字段名 FROM 左表 [INNER] JOIN 右表 ON 条件select * from emp inner join dept;select * from emp inner join dept on emp.id = dept.id where ;
 #左外连接:求交集(左边的表完全显示)#SELECT 字段名 FROM 左表 LEFT [OUTER] JOIN 右表 ON 条件select * from emp left join dept on emp.id = dept.id where ;#SELECT 字段名 FROM 左表 RIGHT [OUTER ]JOIN 右表 ON 条件select * from emp right join dept on emp.id = dept.id where ;#子查询:【用一个查询的结果作为另外一个查询的条件】#SELECT 查询字段 FROM 表 WHERE 字段 =(子查询);#SELECT 查询字段 FROM 表 WHERE 字段 IN (子查询);

总结

未完待续                

这篇关于【MySQL】5分钟学会数据库基本操作(二)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!