SQL中连接JOINS总结
引用菜鸟教程https://www.runoob.com/sql/sql-join.html
1、SQL join 用于把来自两个或多个表的行结合起来。
下图展示了 LEFT JOIN、RIGHT JOIN、INNER JOIN、OUTER JOIN 相关的 7 种用法。
2、详细介绍
关键字 | sql | 描述 | |
1 | INNER JOIN |
SELECT column_name(s) FROM table1 INNER JOIN table2 ON table1.column_name=table2.column_name; |
INNER JOIN 关键字在表中存在至少一个匹配时返回行;注释:INNER JOIN 与 JOIN 是相同的 |
2 | LEFT JOIN |
SELECT column_name(s) FROM table1 LEFT JOIN table2 ON table1.column_name=table2.column_name; |
LEFT JOIN 关键字从左表(table1)返回所有的行,即使右表(table2)中没有匹配。如果右表中没有匹配,则结果为 NULL;注释:在某些数据库中,LEFT JOIN 称为 LEFT OUTER JOIN |
3 | LEFT JOIN |
SELECT column_name(s) WHERE table2.column_name IS NULL |
|
4 | RIGHT JOIN |
SELECT column_name(s) FROM table1 RIGHT JOIN table2 ON table1.column_name=table2.column_name; |
RIGHT JOIN 关键字从右表(table2)返回所有的行,即使左表(table1)中没有匹配。如果左表中没有匹配,则结果为 NULL;注释:在某些数据库中,RIGHT JOIN 称为 RIGHT OUTER JOIN |
5 | RIGHT JOIN |
SELECT column_name(s) WHERE table1.column_name IS NULL |
|
6 | FULL JOIN |
SELECT column_name(s) |
FULL OUTER JOIN 关键字只要左表(table1)和右表(table2)其中一个表中存在匹配,则返回行;FULL OUTER JOIN 关键字结合了 LEFT JOIN 和 RIGHT JOIN 的结果。MySQL中不支持 FULL OUTER JOIN |
7 | FULL JOIN |
SELECT column_name(s) WHERE table1.column_name IS NULL OR table2.column_name IS NULL |
SQL中连接JOINS总结相关推荐
- SQL中连接(JOIN)子句介绍
本文主要介绍 SQL(Structured Query Language)中连接(JOIN)子句的相关知识,同时通过用法示例介绍连接的常见用法. 说明:本文的用法示例是面向 MySQL 数据库的. 1 ...
- SQL中的left outer join,inner join,right outer join用法 (左右内连接)
SQL语句中的left outer join,inner join,right outer join用法 left outer join=left join , right outer join= ...
- SQL中内连接、外连接、交叉连接
SQL中内连接.外连接.交叉连接 SQL连接可以分为内连接.外连接.交叉连接. 数据库数据: book表 ...
- fastreport.net 交叉表居中显示_浅析Sql中内连接、外连接、全连接、交叉连接的区别...
外连接(out join) 外连接分为外左连接(left outer join)和外右连接(right outer join) 注释:left outer join 与 left join 等价, 一 ...
- SQL错误提示档案(3):SQL Server连接中的四个最常见错误
SQL Server连接中的四个最常见错误: 一."SQL Server 不存在或访问被拒绝" 一般说来,有以下几种可能性: ...
- LINQ TO SQL中还是用传统的连接串方式建立DbContext更好些
首先,在LINQTOSQL中可以这样建立一个dbcontext private TEntity GetOriginal(TEntity entity) { ...
- SQL Server连接中的常见错误
SQL Server连接中的常见错误: 一."SQL Server 不存在或访问被拒绝" 这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多. 一般说来,有以下几种可能性 ...
- 02-SQL语句给表起别名SQL中的表连接
什么情况下需要给表起别名? 1.表名比较长 2.当需要在多个表中进行查询并把查询内容同时输出的时候 3.当需要进行表连接的时候(其实和2一个意思,一般情况下多个表进行连接主要目的就是为了从多个表中查询 ...
- SQL中的连接(左、右、内连接)
目录 左连接(LEFT JOIN或LEFT OUTER JOIN): 右连接(RIGHT JOIN或RIGHT OUTER JOIN): 内连接(INNER JOIN也叫等值连接): 全连接(FULL ...
最新文章
- Android性能优化之图片压缩优化
- XAMPP下的MYSQL解决中文乱码问题
- 数据库高可用架构(MySQL、Oracle、MongoDB、Redis)
- oracle 创建 触发,Oracle 创建触发器
- 算法优化:动态规划加速,货物运输问题,四边形不等式, 从O(n^2)到O(n^3)
- 【easy】206. Reverse Linked List 链表反转
- Apache负载均衡+Tomcat集群
- 嵌入式Linux多任务编程 进程 管道 命名管道
- python高级功能_python高级篇
- Linux经典书籍推荐-转
- 【代码源 Div1 - 102】#323. 最长因子链(dp)
- 百度安装php环境,Centos下安装类百度文库环境
- 作业1-3 求1+2!+3!+...+20!的和
- 如何快速深入理解监控知识?
- 三节锂电池充电芯片,IC设计模块的几种电路
- 嵌入式学习——c的复习
- 我的 OCM 之路|书写无悔青春,追梦永不止步
- 前端项目实战176-栅格顺序
- matlab程序二不能用于负数,matlab中负数的二进制码如何求取
- 安装系统-win 10
热门文章
- Millionaire Dream
- 认识jQuery的Promise
- 软件测试常用linux命令
- win10安装node后报错:npm WARN config global `--global`, `--local` are deprecated. Use `--location=global`
- Java网络商城项目 SpringBoot+SpringCloud+Vue 网络商城(SSM前后端分离项目)十六(商品排序,Thymeleaf快速入门,商品详情页的展示)
- 【杂谈】win10耳机与外放分别设置
- mysql中insert into语句
- 什么是规划物料清单(Planning BoM)?
- 无法安装驱动程序 此计算机上不存在英特尔适配器,win10系统提示无法安装驱动程序,此计算机中没有Intel适配器怎么办...
- Sqoop export columns 参数使用