一、含义
当查询中涉及到了多个表的字段,需要使用多表连接
select 字段1,字段2
from 表1,表2,...;笛卡尔乘积:当查询多个表时,没有添加有效的连接条件,导致多个表所有行实现完全连接
如何解决:添加有效的连接条件二、分类按年代分类:sql92:等值非等值自连接也支持一部分外连接(用于oracle、sqlserver,mysql不支持)sql99【推荐使用】内连接等值非等值自连接外连接左外右外全外(mysql不支持)交叉连接三、SQL92语法
1、等值连接
语法:select 查询列表from 表1 别名,表2 别名where 表1.key=表2.key【and 筛选条件】【group by 分组字段】【having 分组后的筛选】【order by 排序字段】特点:① 一般为表起别名②多表的顺序可以调换③n表连接至少需要n-1个连接条件④等值连接的结果是多表的交集部分2、非等值连接
语法:select 查询列表from 表1 别名,表2 别名where 非等值的连接条件【and 筛选条件】【group by 分组字段】【having 分组后的筛选】【order by 排序字段】
3、自连接语法:select 查询列表from 表 别名1,表 别名2where 等值的连接条件【and 筛选条件】【group by 分组字段】【having 分组后的筛选】【order by 排序字段】四、SQL99语法
1、内连接
语法:
select 查询列表
from 表1 别名
【inner】 join 表2 别名 on 连接条件
where 筛选条件
group by 分组列表
having 分组后的筛选
order by 排序列表
limit 子句;特点:
①表的顺序可以调换
②内连接的结果=多表的交集
③n表连接至少需要n-1个连接条件分类:
等值连接
非等值连接
自连接2、外连接
语法:
select 查询列表
from 表1 别名
left|right|full【outer】 join 表2 别名 on 连接条件
where 筛选条件
group by 分组列表
having 分组后的筛选
order by 排序列表
limit 子句;
特点:
①查询的结果=主表中所有的行,如果从表和它匹配的将显示匹配行,如果从表没有匹配的则显示null
②left join 左边的就是主表,right join 右边的就是主表full join 两边都是主表
③一般用于查询除了交集部分的剩余的不匹配的行3、交叉连接语法:
select 查询列表
from 表1 别名
cross join 表2 别名;特点:
类似于笛卡尔乘积

mysql_连接查询相关推荐

  1. MySQL 学习笔记(15)— 连接查询(内连接、左外连接、右外连接、全外连接、交叉连接、自然连接等)

    本文参考:https://gitbook.cn/gitchat/column/undefined/topic/5db92b68a9c3a53bc3800eff SQL 支持的连接查询包括内连接.外连接 ...

  2. mysql支不支持fulljoin_mysql不支持full join的另一种解决办法 和根据多个表中的相同分组来连接查询...

    先看两张表: 1. user表: 2. animal表: 现在我想要查询各省市区对应的人名和动物名,即根据省市区来连接两张表. 考虑到user表中有的省市区可能在animal表中没有,animal表中 ...

  3. 使用mysql内连接查询年龄_Mysql的连表查询

    若一个查询同时涉及到两个以上的表,称为连表查询 准备表 create table department( id int auto_increment PRIMARY KEY, name varchar ...

  4. MySQL数据库右连接查询right join ... on

    1. 右连接查询 以右表为主根据条件查询左表数据,如果根据条件查询左表数据不存在使用null值填充. 右连接查询效果图: 右连接查询语法格式: select 字段 from 表1 right join ...

  5. MySQL数据库左连接查询left join ... on

    1. 左连接查询 以左表为主根据条件查询右表数据,如果根据条件查询右表数据不存在使用null值填充 左连接查询效果图: 左连接查询语法格式: select 字段 from 表1 left join 表 ...

  6. MySQL数据库内连接查询inner join...on

    1. 连接查询介绍 连接查询可以实现多个表的查询,当查询的字段数据来自不同的表就可以使用连接查询来完成. 连接查询可以分为: 内连接查询 左连接查询 右连接查询 自连接查询 2. 内连接查询 查询两个 ...

  7. oracle连接查询详解

    连接查询是数据库查询语句中使用频率很高的查询方式,下面根据Oracle提供的官方文档学习一下连接查询. 一 Equijoins 等值连接 等值连接是条件连接在连接运算符为"="号时 ...

  8. 3.4.2  连接查询

    3.4.2  连接查询 一.等值 非等值查询 等值连接    33 查询 每个学生  及其 选修课 的 情况.note select student.*  ,  sc.* from sc,  stud ...

  9. SQL多表连接查询(具体实例)

    本文主要列举两张和三张表来讲述多表连接查询. 新建两张表: 表1:student  截图例如以下: 表2:course  截图例如以下: (此时这样建表仅仅是为了演示连接SQL语句.当然实际开发中我们 ...

  10. 小贝_mysql select连接查询

    select连接查询 简要: 一.union联合查询 二.左右内连接 一.union联合查询 作用: 把2次或多次查询结果合并起来 具体: (表1查询结果) union (表2查询结果) 运行: 先算 ...

最新文章

  1. Make it Divisible by 25 思维
  2. 如果服务器开机显示NObootable,电脑不能开机提示No bootable device怎么办?
  3. 《PHP和MySQL Web开发从新手到高手(第5版)》一1.7 万事俱备,摩拳擦掌
  4. myeclipse springboot 运行内存溢出_springboot学习心得 - aowumao
  5. python selenium自动化(三)Chrome Webdriver的兼容
  6. 月薪30K程序员花了一个小时,用c++做出经典扫雷游戏 !
  7. vs.php在win2008+vs2008下开发调试配置
  8. 学计算机还要写作文吗,第一次学电脑作文3篇
  9. Ubuntu下安装Rabbitmq和golang环境
  10. 使用decode函数
  11. jni数组使用(一)
  12. hololens与混合现实开发pdf_增强现实与虚拟现实:过去和未来
  13. python编程手机_手机最强Python编程神器,在手机上运行Python
  14. 卸载mySQL数据库
  15. 威斯敏斯特教堂(西敏寺)墓碑上的话(WestMinster Abbey,When I was young and free...,修身齐家治国平天下)...
  16. 资源教程[外贸人zencart自助建站视频教程]:第四课(5)zencart更换模板
  17. Windows客户端开发--获取系统mac地址(使用WMI)
  18. 数仓建设之IP库的匹配
  19. HuaWei ❀ IP源防护概述
  20. 腾讯云服务器增加网卡,腾讯云服务器(CVM主机)绑定多个弹性网卡和IP地址的方法...

热门文章

  1. 自适应的设置字体的方式
  2. UIView中的坐标转换
  3. IE下图片切换的时候,图片总是切换不成功---根本问题是IE缓存图片
  4. 对Python中yield的理解
  5. [轉]让PHP支持像jQuery那样的链式操作
  6. 中星9号新增测试频道_直播卫星新增中央卫视18套高清电视节目频道测试
  7. 与spring的整合
  8. 【Shiro第七篇】SpringBoot + Shiro实现会话管理
  9. React使用详解(学习笔记)
  10. CountDownLatch源码解读