美文网首页
2019-03-25多表查询

2019-03-25多表查询

作者: 骏龙ll | 来源:发表于2019-03-25 15:50 被阅读0次

1、--涉及的表是一张以上,两张表就会发生自动连接

--连接规则:笛卡尔积,(每张表里的每一行都与其他表的每一行发生一个链接匹配的情况)

一般n张表相连接,连接条件有n-1个

1/等值连接 两张表有一列值相等

2/非等值连接

**注意

1.同名列需要加表名作为前缀

2.涉及一张以上表,别落下连接条件,否则就会产生笛卡尔积现象

3.表别名(目的:简练表名),一旦有了表别名就需要使用,此时表名再使用就产生错误,只能使用表别名。

2、查询入职时间比其上级入职时间早的员工

如果select *的话会出现显示两张表的全部信息情况,应该选择select e.*

3、标准连接(sql99写法)

了解

--自然连接:nature join两张表同名同类型的字段进行等值连接(必须有两边的列同名且同类型)

--using 子句:select ename,sal,dname from emp join dept using(deptno)

重要

--join on子句

--外部连接

-左(外)连接 left 【outer】 join  以关键字左边的表为主表,主表中记录都要显示,若没有匹配的记录另一张表对应的位置出null匹配。(不要忘记 on后面的内容)

查询所有员工的姓名,工资,部门名称,没有部门的也要显示

select ename,sal,dname

from emp e left join dept d

on e.deptno=d.deptno

-右(外)连接 right【outer】 join

-全(外)连接 full 【outer】 join 目前mysql不支持,oracle支持。 左右两端的表都为主表(没有部门的员工,没有员工的部门都显示)

多表连接注意事项

总结

1、多表连接写法

2、笛卡尔积

3、连接条件

4、sql 99标准写法 join on 子句

5、外部连接(left join,right join,full join(目前mysql不支持))

相关文章

  • 2019-03-25多表查询

    1、--涉及的表是一张以上,两张表就会发生自动连接 --连接规则:笛卡尔积,(每张表里的每一行都与其他表的每一行发...

  • SQLAlchemy(四)

    知识要点: 1.多表查询 2.原生SQL的查询 多表查询 在MySQL中我们讲了多表查询,在SQLAlchemy中...

  • python面试题01

    1、什么是多表关联查询,有几种多表关联的查询方式,分别是什么? 多表关联查询概念: 多表关联查询分类:1.1内连接...

  • 数据库基本操作3.0

    今日内容 多表查询 \\ 事务DCL 多表查询: 事务 DCL:

  • MySql : 三、 多表查询和事务

    前言 本篇主要介绍了数据库中多表查询以及事务相关的知识。 目录 一、多表查询二、子查询三、事务 一、多表查询 1....

  • Oracle详解(Ⅱ):世界上目前已知最好的关系型数据库

    多表查询 多表连接基本查询 使用一张以上的表做查询就是多表查询 这样会出现的结果就是:笛卡儿积连接查询的时候一般在...

  • spring-data-jpa 复杂查询:使用

    单表查询 多表查询

  • 4.MySQL多表&事务

    主要内容 1 . 多表查询2 . 事务3 . DCL 多表查询: 事务 DCL:

  • SQL语句常用命令整理---多表查询

    多表查詢之关连查询 多表数据连接查询,简称连接查询。本篇我们来一同学习多表连接查询的相关用法,主要內容有: 内连接...

  • sql多表查询

    普通多表查询 嵌套多表查询 链接多表查询 左链接(会将左表的内容全部输出,没有需要补NULL) 右链接(会将右表的...

网友评论

      本文标题:2019-03-25多表查询

      本文链接:https://www.haomeiwen.com/subject/xutbvqtx.html