文档章节

SQL的JOIN家族

克松
 克松
发布于 2015/05/26 15:24
字数 497
阅读 10
收藏 0

--先造数据

create table a

(id int,

name nvarchar(50))

insert into a(id,name)


insert into a(id,name)values(1,'张三')

values(2,'李四')

insert into a(id,name)

values(3,'王五')

insert into a(id,name)

values(4,'赵六')

 

 

create table b

(id int,

name nvarchar(50))

insert into b(id,name)

values(1,'张三')

insert into b(id,name)

values(2,'李四')

insert into b(id,name)

values(3,'王五')

insert into b(id,name)

values(5,'赵六')

 

select * from a

1张三

2李四

3王五

4赵六

select * from b

1张三

2李四

3王五

5赵六

一、inner join(等价于join)表示内连接,在两个表中存在至少一个匹配时,INNER JOIN 关键字返回行。

select * from a join b on a.id=b.id

1张三1张三

2李四2李四

3王五3王五

二、left join表示左连接,会从左表那里返回所有的行,即使在右表中没有匹配的行。

select * from a left join b on a.id=b.id

1张三1张三

2李四2李四

3王五3王五

4赵六NULLNULL

三、right join表示右连接,会从右表那里返回所有的行,即使在左表中没有匹配的行。

select * from a right join b on a.id=b.id

 

1张三1张三

2李四2李四

3王五3王五

NULLNULL5赵六

四、full join表示全连接,只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。

select * from a full join b on a.id=b.id

1张三1张三

2李四2李四

3王五3王五

4赵六NULLNULL

NULLNULL5赵六

五、cross join连接用于生成两张表的笛卡尔集。

select * from a cross join b

 

1张三1张三

2李四1张三

3王五1张三

4赵六1张三

1张三2李四

2李四2李四

3王五2李四

4赵六2李四

1张三3王五

2李四3王五

3王五3王五

4赵六3王五

1张三5赵六

2李四5赵六

3王五5赵六

4赵六5赵六

 

 


 

© 著作权归作者所有

共有 人打赏支持
克松

克松

粉丝 1
博文 2
码字总数 1191
作品 0
程序员
SQL--Advanced tutorials

LIKE--模糊查询 选取 url 以字母 https开始的所有网站 选取 url 包含模式 "oo" 的所有网站 JOIN--外连接查询 SQL JOIN 子句: 用于把来自两个或多个表的行结合起来,==基于这些表之间的共同字...

T-newcomer
01/31
0
0
SQL Server Join方式

0.参考文献 Microsoft SQL Server企业级平台管理实践 看懂SqlServer查询计划 1.测试数据准备 参考:Sql Server中的表访问方式Table Scan, Index Scan, Index Seek 这篇博客中的实验数据准备。...

嗯哼9925
2017/12/21
0
0
oracle下left join查询报ora-03113:一表多字段另一表同一字段关联

用友nc的web service接口报500,跟踪代码后发现是一个sql查询报错引起的。 该sql是多个表通过left join on连接起来的。其中一个表很多字段另一个表的一个字段关联, 一查询就报 ORA-03113: 通...

caoxie
2015/06/18
179
3
MySQL 查询优化器(四)

2.5 LEFT JOIN查询 该测试主要用于测试LEFT JOIN与JOIN的处理逻辑上的差异,具体查询处理逻辑如下所示: JOIN:prepare阶段 setuptables():同2.1测试。 setupfields():同2.1测试。 setupcon...

tara_qri
2015/09/29
37
0
SQL Server基础 -- 基本用法查询

SQL Server基础 -- 基本用法查询 http://www.runoob.com/sql/sql-func-mid.html SQL 教程 SQL 教程 SQL 简介 SQL 语法 SQL SELECT SQL SELECT DISTINCT SQL WHERE SQL AND & OR SQL ORDER BY......

chenhao_asd
03/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

sklearn中predict_proba用法(注意和predict的区别)

参考网址:https://blog.csdn.net/m0_37870649/article/details/79549142 # 返回预测标签 print(clf.predict(x_test)) # 返回预测属于某标签的概率 print(clf.predict_proba(x_test))...

小叮当_加V
3分钟前
0
0
docker swarm创建consul集群

version: '3.6'x-consul: &consul image: consul:latest volumes: - consul:/consulvolumes: consul:services: client: <<: *consul ports: - "8500:......

weidedong
4分钟前
0
0
Git客户端(TortoiseGit)基本使用详解

1、 环境安装 Git最新版下载地址:https://gitforwindows.org/ TortoiseGit,Git客户端,32/64位最新版及对应的语言包下载地址:https://tortoisegit.org/download/ 安装的方法,一直下一步就...

hblt-j
11分钟前
0
0
服务发现比较:Consul vs Zookeeper vs Etcd vs Eureka

这里就平时经常用到的服务发现的产品进行下特性的对比,首先看下结论: Feature Consul zookeeper etcd euerka 服务健康检查 服务状态,内存,硬盘等 (弱)长连接,keepalive 连接心跳 可配支持...

lemonLove
11分钟前
0
0
1、ElasticSearch的安装配置和使用

一、安装 按照个人习惯我习惯把自己的软件都安装到opt下 解压 tar -zxvf elasticsearch-6.3.2.tar.gz 重命名 mv elasticsearch-6.3.2.tar.gz esearch 移动 mv elasticsearch-6.3.2.tar.gz /o...

丑陋的皮囊
13分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部