SQL标准中 join的类型

1、内连接 (INNER)

2、全外连接(FULL OUTER)

JOIN 3、左外连接(LEFT OUTER)

4、右外连接 (RIGHT OUTER)

5、交叉连接 (CROSS)

首先准备两张表     西天取经四人组 和 悟空的朋友们

      

1、INNER JOIN (内连接)

内连接基于连接谓词 将两张表的列组合到一起,产生新的结果表

执行:select * from fourmangroup a inner join wukongFriends b on a.user_name=b.user_name

结果:

2、LEFT OUTER JOIN (左外连接)

查询取经四人组中哪些人不是悟空的结拜兄弟

执行:select * from fourmangroup a left join wukongFriends b on a.user_name=b.user_name

结果:查出A表中所有数据,并且与B表没有关联的项将被置为空

3、RIGHT OUTER JOIN(右外连接)

与左外连接正好相反  ,结果会保留b表中的中的所有数据 ,和a表没有关联的项将被置为空

执行:

4、FULL JOIN(全连接)

查询出A表和B表中所有的数据,或查询出A表和B表所有的数据并将重复部分给过滤掉。

注意:在mysql中默认是不支持FULL JOIN的   会报出1604的错误

转化思想:左连接的结果+右连接  =全连接

left join   。。。。。。 uinon all   ....     right   join ....

执行:select * from fourmangroup a left join wukongFriends b on a.user_name=b.user_name 
union all
select * from fourmangroup a right join wukongFriends b on a.user_name=b.user_name where b.user_name is not null

结果:

5、Cross JOIN(交叉连接)

又称笛卡尔连接或叉乘,即A表2条记录,B表3条记录,则结果为2*3   6条记录

执行:select * from fourmangroup a cross join wukongFriends b

结果:

SQL开发技巧 join从句相关推荐

  1. SQL开发技巧(二) 【转】感觉他写的很好

    本文转自: http://www.cnblogs.com/marvin/p/DevelopSQLSkill_2.html 本系列文章旨在收集在开发过程中遇到的一些常用的SQL语句,然后整理归档,本系列 ...

  2. 【SQL开发实战技巧】系列(六):从执行计划看NOT IN、NOT EXISTS 和 LEFT JOIN效率,记住内外关联条件不要乱放

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  3. 【SQL开发实战技巧】系列(五):从执行计划看IN、EXISTS 和 INNER JOIN效率,我们要分场景不要死记网上结论

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  4. [转]SQL Server开发技巧

    经常发现收藏的连接变成空连接,暂时将由于的内容拷贝过来,以免需要的时候找不到. http://www.microsoft.com/china/sql/using/tips/development/de ...

  5. 【SQL开发实战技巧】系列(十):从拆分字符串、替换字符串以及统计字符串出现次数说起

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  6. 【SQL开发实战技巧】系列(一):关于SQL不得不说的那些事

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  7. 【SQL开发实战技巧】系列(三):SQL排序的那些事

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  8. 【SQL开发实战技巧】系列(七):从有重复数据前提下如何比较出两个表中的差异数据及对应条数聊起

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  9. 【SQL开发实战技巧】系列(二):简单单表查询

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

最新文章

  1. Java基础学习总结(8)——super关键字
  2. Struts2的OGNL
  3. vant组件搜索并选择_Vue.js自定义弹层组件|vue仿微信/ios弹窗
  4. xampp php连接mysql数据库_关于PHP xampp连接数据库之后查询失败,数据库连接成功,表中也有数据...
  5. 每日一题:leetcode90.子集贰
  6. 在linux上,为什么不用配置环境变量还能运行java程序呢?
  7. 【Android-Room数据库系列】—— Room 基础
  8. oracle 11g regexp_substr,oracle中REGEXP_SUBSTR方法的使用
  9. MongoDB 覆盖索引查询
  10. 一个对oi选手的感想
  11. IEEE ACCESS 模板中字体颜色与caption包冲突解决办法
  12. 【海康威视】WPF客户端二次开发:【8】海康SDK Dll程序集集成优化
  13. 【堆排序的递归和非递归实现】Java实现
  14. causal snps | causal variants | tensorflow | 神经网络实战 | Data Simulation
  15. 街霸5 android,街头霸王5手机版
  16. 手动扩展oracle表空间,Oracle如何扩展表空间
  17. 实验八 Python文件处理
  18. 计算机存储容量用K还是KB,计算机中容量单位B、KB、MB、GB和TB的关系
  19. 路由器虚拟服务器wan端口设置,tplink路由器WAN口设置怎么设置?
  20. 欧几里得算法 辗转相除法 C语言

热门文章

  1. 软件工程进度条-第十二周
  2. 黑马程序员——java基础---多线程(二)
  3. Socket阻塞与非阻塞,同步与异步、I/O模型
  4. Rsync 3.1.0 发布,文件同步工具
  5. 速查100 WebServers
  6. matlab 思维数组_如何在Matlab中保存多维数组?
  7. python的return语句求两数之和_Python的return语句可以返回多个不同类型的值
  8. oracle移植mysql方案_系统从MySQL迁移至ORACLE实现方案
  9. migo获取header sap_Adjust Stock(MI06, MI07, MIGO)
  10. 求和第一个算到最后一个周末求_Excel最全求和函数—sum家族系列