mysql实现外连接方式

 更新时间:2019年08月24日 10:16:15   作者:鸭鸭老板  
今天小编就为大家分享一篇mysql实现外连接方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

一、外连接

1.左外连接(左侧的表完全显示就是左外连接)

select..from表1 left join 表2 on 条件(表1:为左表,表2:为右表)

-- 外连接
-- 创建stu
CREATE TABLE stu(
   id INT,
   `name` VARCHAR(32)
);
INSERT INTO stu VALUES(1,'jack'),(2,'tom'),(3,'kity'),(4,'nono')
SELECT*FROM stu
-- 创建exam
CREATE TABLE exam(
  id INT,
  grade INT
  
);
INSERT INTO exam VALUES(1,56),(2,76),(11,8)
SELECT*FROM exam
-- 左外连接
-- 查询所有人的成绩,没有成绩,也要显示姓名,id号,成绩显示为空
SELECT `name`,stu.id,grade 
        FROM stu LEFT JOIN exam
        ON stu.id = exam.id

2.右外连接(右侧的表完全显示就是右外连接)

select..from表1 reght join 表2 on 条件(表1:为左表,表2:为右表)

-- 右外连接
--  查询所显示有人成绩,没有名字的显示为空
SELECT `name`,stu.id,grade 
        FROM stu RIGHT JOIN exam
        ON stu.id = exam.id

二、内连接

select employee_id,department_name from `employees` e,`departments` d where e.department_id = d.department_id;

 

练习

-- 列出部门名称和这些部门的员工信息(名字和工作)同时列出那些没有员工的部门名
-- 左连接实现
SELECT dname,ename,job 
       FROM dept LEFT JOIN emp
       ON dept.deptno = emp.deptno
 -- 有连接实现
 SELECT dname,ename,job 
       FROM emp RIGHT JOIN dept
       ON dept.deptno = emp.deptno

在实际开发中,大多数使用内连接,很少使用外连接。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • MySQL MyISAM 优化设置点滴

    MySQL MyISAM 优化设置点滴

    MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快, 只是不提供事务支持.大部分项目是读多写少的项目,而Myisam的读性能是比innodb强不少的
    2016-05-05
  • Mysql命令行导出SQL文件和导入文件详细步骤

    Mysql命令行导出SQL文件和导入文件详细步骤

    这篇文章主要给大家介绍了关于Mysql命令行导出SQL文件和导入文件的详细步骤,在MySQL中,导入SQL文件是一个常见的操作,它可以帮助我们快速地恢复数据库、迁移数据或者备份数据,需要的朋友可以参考下
    2024-05-05
  • 简介操作MySQL日志的一些方法

    简介操作MySQL日志的一些方法

    这篇文章主要介绍了操作MySQL日志的一些方法,对日志的删除操作做了重点讲解,需要的朋友可以参考下
    2015-07-07
  • win10下mysql 5.7.23 winx64安装配置方法图文教程

    win10下mysql 5.7.23 winx64安装配置方法图文教程

    这篇文章主要为大家详细介绍了win10下mysql 5.7.23 winx64安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • 讲解MySQL中<=>操作符的用法

    讲解MySQL中<=>操作符的用法

    这篇文章主要介绍了讲解MySQL中<=>操作符的用法,整理自stackoverflow的相关实际问题,需要的朋友可以参考下
    2015-04-04
  • Python Matplotlib绘图基础详细教程

    Python Matplotlib绘图基础详细教程

    matplotlib是python中用于绘制各种图像的模块,功能十分强大,通常与pandas模块搭配使用,可以生成各种样视的图片,用于数据的分析和展示,下面这篇文章主要给大家介绍了关于Python Matplotlib绘图基础的相关资料,需要的朋友可以参考下
    2022-07-07
  • 关于SQL的cast()函数解析

    关于SQL的cast()函数解析

    这篇文章主要介绍了关于SQL的cast()函数解析,CAST函数用于将某种数据类型的表达式显式转换为另一种数据类型。CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型,需要的朋友可以参考下
    2023-04-04
  • MySQL必备的常见知识点汇总整理

    MySQL必备的常见知识点汇总整理

    这篇文章主要介绍了MySQL必备的常见知识点,结合实例形式汇总整理了mysql各种常见知识点,包括登录、退出、创建、增删改查、事务等知识点与操作注意事项,需要的朋友可以参考下
    2020-05-05
  • 一文详解MySQL Binlog日志与主从复制

    一文详解MySQL Binlog日志与主从复制

    这篇文章主要介绍了一文详解MySQL Binlog日志与主从复制,Binlog是Binary log的缩写,即二进制日志,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-07-07
  • SQLyog错误号码2058最新解决办法

    SQLyog错误号码2058最新解决办法

    这篇文章主要给大家介绍了关于SQLyog错误号码2058的最新解决办法,使用sqlyog连接数据库过程中可能会出现2058错误,出现的原因是因为MYSQL8.0对密码的加密方式进行了改变,需要的朋友可以参考下
    2023-08-08

最新评论