第12章 SQL联接
关系数据库的3个支柱:选择、投影和联接。
两种基本的连接同等联接和非同等联接。
源表和目标表有相同的名称的列,就可以在他们之间执行自然联接,而无需指定连接列。
自然join using语句
select table1.column,table2.coulmn from table1 join table2
using(join_column1)
在公共的join_column1列值上联接table1和table2
 
自然join on子句
select table1.column,table2.column from table1 join table2
on(table1.column_name=table2.column_name)
 
有三自然联接格式:natural join,join on ,join using
 
左外联接
select table1.column,table2.column from table1
left outer join table2 
on(table1.column_name=table2.column_name)
 
右外连接
select table1.column,table2.column from table1,table2
table1.column_name(+)=table2.column_name
等同于:
select table1.column,table2.column from table1
right outer join table2
on(table1.column_name=table2.column_name)
 
全外联接
select table1.column,table2.column from table1
full outer join table2
on(table1.column_name=table2.column_name)
全外联接返回左外联接和右外联接的组合结结果。
 
交叉联接
select tbale1.column,table2.column from table1
cross join table2
用来确定孤立行或生成大的数据集用于测试
当使用交叉联接时就会生成笛卡尔乘积,当语句中没有足够的条件时,就会无意中创建笛卡尔乘积,没有共享相同名称的列的自然联接也会产生笛卡尔乘积。

第12章 SQL联接的更多相关文章

  1. Linux就这个范儿 第12章 一个网络一个世界

    Linux就这个范儿 第12章 一个网络一个世界 与Linux有缘相识还得从一项开发任务说起.十八年前,我在Nucleus  OS上开发无线网桥AP,需要加入STP生成树协议(SpanningTree ...

  2. JS读书心得:《JavaScript框架设计》——第12章 异步处理

    一.何为异步   执行任务的过程可以被分为发起和执行两个部分. 同步执行模式:任务发起后必须等待直到任务执行完成并返回结果后,才会执行下一个任务. 异步执行模式:任务发起后不等待任务执行完成,而是马上 ...

  3. ASM:《X86汇编语言-从实模式到保护模式》第12章:存储器的保护

    12章其实是11章的拓展,代码基本不变,就是在保护模式下展开讨论. ★PART1:存储器的保护机制 1. 修改段寄存器的保护 当执行把段选择子传到段寄存器的选择器部分的时候,处理器固件在完成传送之前, ...

  4. 敏捷软件开发:原则、模式与实践——第12章 ISP:接口隔离原则

    第12章 ISP:接口隔离原则 不应该强迫客户程序依赖并未使用的方法. 这个原则用来处理“胖”接口所存在的缺点.如果类的接口不是内敛的,就表示该类具有“胖”接口.换句话说,类的“胖”接口可以分解成多组 ...

  5. 阅读<构建之法>第三10、11、12章

    第10章:典型用户和场景 阅读了第10章之后,我知道典型用户很重要,典型用户是某类群体的代表,他们的观点能够反映一类人的观点与对产品的要求,那么要怎么样才能够从一类群体里,选择正确的典型用户反映我们研 ...

  6. CSS3秘笈第三版涵盖HTML5学习笔记9~12章

    第9章,装饰网站导航 限制访问,处于隐私方面考虑,浏览器已经开始限制可以对伪类:visited应用哪些CSS属性了.其中包括对已访问过的链接定义color.background-color.borde ...

  7. Android开发艺术探索》读书笔记 (12) 第12章 Bitmap的加载和Cache

    第12章 Bitmap的加载和Cache 12.1 Bitmap的高速加载 (1)Bitmap是如何加载的?BitmapFactory类提供了四类方法:decodeFile.decodeResourc ...

  8. 第12章 代理模式(Proxy Pattern)

    原文   第12章 代理模式(Proxy Pattern) 代理模式 概述: 在软件系统中,有些对象有时候由于跨越网络或者其他的障碍,而不能够或者不想直接访问另一个对象,如果直接访问会给系统带来不必要 ...

  9. 【机器学习实战】第12章 使用FP-growth算法来高效发现频繁项集

    第12章 使用FP-growth算法来高效发现频繁项集 前言 在 第11章 时我们已经介绍了用 Apriori 算法发现 频繁项集 与 关联规则.本章将继续关注发现 频繁项集 这一任务,并使用 FP- ...

随机推荐

  1. Redis的持久化和主从复制机制

    Redis持久化 Redis 提供了多种不同级别的持久化方式: RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot) AOF 持久化记录服务器执行 ...

  2. linq语句,常用的查询,模糊查询,实体查询

    查询: //List是要查询的实体列表的集合 List.FindAll(n => n.NAME == NAME),    //NAME变量是要查询的条件 模糊查询 List.FindAll(s ...

  3. CF930E Coins Exhibition

    题意:平面上一共有k个硬币(k<=1e9),给你n个区间这些区间中至少有一个硬币反面朝上,m个区间中至少有一个硬币正面朝上.问有多少种硬币放置方案?n,m<=100005. 标程: #in ...

  4. String str = new String("abc"),这段代码一共生成了几个String对象?为什么?

    String str = new String("abc")创建了俩个对象,首先为创建一个String对象"abc",然后在调用String类的构造方法时 pu ...

  5. hibernate_02_hibernate的入门

    1.什么是Hibernate框架? Hibernate是一种ORM框架,全称为 Object_Relative DateBase-Mapping,在Java对象与关系数据库之间建立某种映射,以实现直接 ...

  6. JavaScript中的文档对象模型

    1. DOM基本介绍1 什么是DOMDOM的英语全称为Document Object Model,翻译成中文就 是文档对象模型.也就是说,将整个文档看作是一个对象.而一个文档又是由很多节点组成的, 那 ...

  7. SQL 分组后获取每组中最大值

    场景:sql server 2008 drop table ID CREATE TABLE ID ( id ,) not null, code int , D date, PRIMARY KEY (i ...

  8. Git上传文件指北

    PS:之前设置SSH密钥之类的步骤假设都已经完成,只需日常上传文件 1.仓库初始化 假设你已经新建好了一个仓库(New Repository),名为:RepoName 选择你代码所在的本地文件夹,鼠标 ...

  9. mysql初次使用

  10. vue/cli 3.0脚手架搭建

    在vue 2.9.6中,搭建vue-cli脚手架的流程是这样的: 首先 全局安装vue-cli,在cmd中输入命令: npm install --global vue-cli  安装成功:  安装完成 ...