常用的JOIN语句

梗概:不同的 SQL JOIN

除了我们在上面的例子中使用的 INNER JOIN(内连接),我们还可以使用其他几种连接。

下面列出了您可以使用的 JOIN 类型,以及它们之间的差异。

  • JOIN: 如果表中有至少一个匹配,则返回行
  • LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
  • RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
  • FULL JOIN: 只要其中一个表中存在匹配,就返回行

一:SQL INNER JOIN 关键字

在表中存在至少一个匹配时,INNER JOIN 关键字返回行。

INNER JOIN 关键字语法

SELECT column_name(s)
FROM table_name1
INNER JOIN table_name2
ON table_name1.column_name=table_name2.column_name

注释:INNER JOIN 与 JOIN 是相同的。

实例:

原始的表 (用在例子中的):

"Persons" 表:

Id_P LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing

"Orders" 表:

Id_O OrderNo Id_P
1 77895 3
2 44678 3
3 22456 1
4 24562 1
5 34764 65

内连接(INNER JOIN)实例

现在,我们希望列出所有人的定购。

您可以使用下面的 SELECT 语句:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.Id_P=Orders.Id_P
ORDER BY Persons.LastName

结果集:

LastName FirstName OrderNo
Adams John 22456
Adams John 24562
Carter Thomas 77895
Carter Thomas 44678

INNER JOIN 关键字在表中存在至少一个匹配时返回行。如果 "Persons" 中的行在 "Orders" 中没有匹配,就不会列出这些行。

转载于:https://www.cnblogs.com/dark-passion/p/8205100.html

SQL连接查询_ INNER JOIN相关推荐

  1. SQL数据库语言基础之SqlServer多表连接查询与INNER JOIN内连接查询

    文章目录 一.简单连接查询 二.多表连接查询 三.INNER JOIN 内连接查询 一.简单连接查询 1.直接连接:无连接规则连接两表,得到的是两个表的笛卡尔积. 连接后的行数=表1行数*表2行数 连 ...

  2. mysql sql 连接查询语句_Mysql——sql数据库中的连接查询

    1.1.1   交叉连接(CROSS JOIN) 交叉连接(CROSS JOIN):有两种,显式的和隐式的,不带ON子句,返回的是两表的乘积,也叫笛卡尔积. 例如:下面的语句1和语句2的结果是相同的. ...

  3. SQL连接查询深度探险

    测试环境: Windows XP Profession MySQL 5.0.45 Oracle 9i DB2 UDB 9.1 测试的SQL脚本如下:此脚本适合MySQL.DB2,如果要在Oracle上 ...

  4. mysql join 排序_MySQL查询优化:连接查询排序limit(join、order by、limit语句)

    本文链接:https://blog.csdn.net/xiao__gui/article/details/8616224 不知道有没有人碰到过这样恶心的问题:两张表连接查询并limit,SQL效率很高 ...

  5. SQL连接查询和嵌套查询详解

    连接查询 若一个查询同时涉及两个或两个以上的表,则称之为连接查询.连接查询是数据库中最最要的查询, 包括: 1.等值连接查询 2.自然连接查询 3.非等值连接查询 4.自身连接查询 5.外连接查询 6 ...

  6. mysql与java连接查询_【java】MySQL数据库之连接查询

    连接查询 首先来认识一个叫笛卡尔积 (cartesian product) 的东东,也可以叫直积. 假设我们有一个集合 A = {a, b}, 还有一个集合B = {0, 1, 2} ,那么这两个两集 ...

  7. sql \n 查询_探索SQL查询提示选项(快速N)

    sql \n 查询 In this article, we will introduce SQL queries hint and will analyze the OPTION(Fast 'N') ...

  8. SQL连接查询和笛卡尔积

    使用连接查询查出来的结果不是简单地两个表的笛卡尔积,而是包含了所有匹配条件的结果集. 连接查询是通过将两个或多个表的数据根据指定的条件进行关联,从而返回一张包含了两个或多个表的字段的结果集.连接查询的 ...

  9. sql镶嵌查询_【SQL】嵌套查询与子查询

    前言 sql的嵌套查询可以说是sql语句中比较复杂的一部分,但是掌握好了的话就可以提高查询效率.下面将介绍带in的子查询.带比较运算符的子查询.带any/all的子查询.带exists的子查询以及基于 ...

最新文章

  1. I.MX6 Android frameworks services 文件架构
  2. 在.NET2.0中解析Json和Xml
  3. Android Studio内存优化
  4. 图解Numpy的tile函数
  5. python_wifi
  6. 结构化程序设计03 - 零基础入门学习Delphi12
  7. 汇编语言start标号的作用
  8. script 标签到底该放在哪里
  9. 计算机视觉基础——图像处理(彩色空间互转)cpp+python
  10. Jsp之建立JDBC-ODBC桥接器连接数据库
  11. oracle 结构化语言查询 DML DDL DCL
  12. www.biubiujie.com BiuBiu街-要Beautiful的女孩纸逛的街
  13. 河海大学软件工程考研上岸经验贴
  14. php 时间转换时间戳_PHP日期格式转时间戳
  15. win7 可以装matlab 吗,如何在win7里安装matlab7.0
  16. request+BeautifulSoup:下载《笔趣看》网小说《第九特区》
  17. android banner图片错位,android轮播图Banner的使用及详解
  18. html基本词汇app,背单词APP哪个最好 可以自定义单词卡片的英语学习APP推荐
  19. 流程设计建模方法:流程的需求梳理之流程级别梳理
  20. 键盘android,Android键盘系统浅析(上)

热门文章

  1. java 参数值_java参数传值方式
  2. Dungeon Master 地下城大师(BFS进阶)
  3. Catch That Cow抓住那只奶牛(BFS,广度优先搜索)
  4. 至商3000服务器信息,至商3000企业管理系统
  5. caffe+GPU︱AWS.G2+Ubuntu14.04+GPU+CUDA8.0+cudnn8.0
  6. 表格数据的识别与提取
  7. ios 初体验窗口的创建
  8. 使用百度地图实现基本的地图显示与定位功能
  9. sqlmap的篡改绕过WAF
  10. TQ2440实现触摸屏和qt图形 解决segmentation fault