一、含义

当查询中涉及到了多个表的字段,需要使用多表查询
select 字段1,字段2,……
from 表1,表2,……

二、分类

按年代分
sql192:

  1. 等值连接
  2. 非等值连接
  3. 自连接

sql199【推荐使用】

内连接

  1. 等值连接
  2. 非等值连接
  3. 自连接

外连接

  1. 左外连接
  2. 右外连接
  3. 全外连接

三、语法

sql92语法
特点:
一般为表起别名
多表的顺序可以调换
n表连接至少需要n-1个连接条件
等值连接的结果是多表的交集部分

  1. 等值连接
    select 查询列表
    from 表1 别名,表2 别名
    where 表1.key = 表2.key
    【and 筛选条件】
    【group by 分组字段】
    【having 分组后的筛选】
    【order by 排序字段】

  2. 非等值连接
    select 查询列表
    from 表1 别名,表2 别名
    where 非等值的连接条件
    【and 筛选条件】
    【group by 分组字段】
    【having 分组后的筛选】
    【order by 排序字段】

  3. 自连接(表自己连接自己)
    select 查询列表
    from 表1 别名1,表1 别名2
    where 表1.key = 表1.key
    【and 筛选条件】
    【group by 分组字段】
    【having 分组后的筛选】
    【order by 排序字段】

sql99语法

  1. 内连接(inner join)
    select 查询列表
    from 表1 别名 inner join 表2 别名 on 连接条件
    【where 筛选条件】
    【group by 分组字段】
    【having 分组后的筛选】
    【order by 排序字段】
    特点:
    表的顺序可以调换
    内连接的结果 = 多表的交集
    n表连接至少需要n-1个连接条件
  2. 外连接
    特点
    查询的结果 = 主表中所有的行,如果从表和它匹配的将显示匹配行,如果从表没有匹配的则显示null
    left join 左边的就是主表
    right join 右边的就是主表
    full join 两边都是主表
    一般用于查询除了交集部分的剩余的不匹配的行
    select 查询列表
    from 表1 别名 left\right\full join 表2 别名 on 连接条件
    【where 筛选条件】
    【group by 分组字段】
    【having 分组后的筛选】
    【order by 排序字段】

sql server语法——多表查询(连接查询)相关推荐

  1. SQL server 两台服务器间连接查询

    --两台服务器间连接查询: --建立连接: sp_addlinkedserver hs sp_addlinkedserver hs1 EXEC sp_addlinkedsrvlogin 'hs', ' ...

  2. SQL Server 2005中专用管理员连接 (DAC) 使用技巧修改系统表的方法

    Server 2005 专用管理员连接 (DAC) 使用技巧 1 什么是专用管理员连接? SQL Server 2005 为管理员提供了一种特殊的诊断连接,以供在无法与服务器建立标准连接时使用. 2 ...

  3. mysql多张表join_mysql 连接查询(多表查询)+子查询-初学教程 3【重点】

    第一部分:https://zhuanlan.zhihu.com/p/63217422 第二部分:https://zhuanlan.zhihu.com/p/64153448 Day3 九.连接查询 1. ...

  4. 05.SQL Server大数据群集小试牛刀--HDFS查询

    05.SQL Server大数据群集小试牛刀--HDFS查询 SQL Server大数据群集查询HDFS ,利用之前创建好的大数据群集,使用官方提供的测试数据进行测试.脚本是官方的脚本,要知道干了什么 ...

  5. mysql桦仔_Microsoft SQL Server 2005技术内幕:T-SQL查询笔记

    Microsoft SQL Server 2005技术内幕:T-SQL查询笔记 目录 f f f f f f f f 第二章 物理查询处理 分析,代数化,查询优化 f f f f f. 分析--> ...

  6. mysql连接查询(两个表内和多个表内连接查询)

    连接是关系数据模型的主要特点,连接查询是关系数据库中最主要的查询,包括内连接.外连接等. 当两个或多个表中存在相同意义的字段时,便可以通过这些字段对不同的表进行 连接查询,得到存放在多个表中的记录数据 ...

  7. [亲测]Oracle查询--单表查询,连接查询(一)

    ORACLE查询(单表查询,连接查询) 一.单表查询 (一)简单条件查询 1. 查询水表编号为 30408 的业主记录 ( 精确查询 ) select * from t_owners where wa ...

  8. mysql 三个表内连接查询_MySQL5.5多表之连接查询

    连接查询 关系型数据库管理系统中,通常将每个实体的所有信息存放在一张表中,当查询数据时,通过连接操作查询多个表中的实体信息,当两个或多个表中存在相同意义的字段时,便可以通过这些字段对不同的表进行连接查 ...

  9. mysql左连接sql语句详解_SQL各种连接查询详解(左连接、右连接..)

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

最新文章

  1. 大富翁已成过去-我的一些感想
  2. 中秋佳节,这个网络安全 7 年经验的大佬来发福利了!
  3. NET问答: 如何迭代 Enum ?
  4. [react] 说说react diff的原理是什么
  5. POJ 2288 Islands and Bridges(状压dp)
  6. 云管理不是巴别塔 从数据跨入云之路
  7. mybatis plus 使用函数_mybatis-plus的使用 ------ 入门
  8. 图卷积网络的半监督学习脉络
  9. 批量快速的导入导出Oracle的数据(spool缓冲池、java实现)
  10. 真人发音计算机在线用,文字转语音真人发声在线怎么转换?这种操作最简单
  11. DDos攻击防御策略
  12. 推广引流方法有哪些方式,平台有哪些?各平台引流方法分析!
  13. 转载 centos CPU温度检测
  14. PLSQL代码调试Oracle dbms_utility返回错误
  15. vue 打卡图片_掀起ins打卡潮的《小丑》台阶到底有什么魔力?
  16. 使用charCodeAt()和charAt()方法,根据Unicode 编码,转换字符
  17. 如何解除计算机方向键问题,笔记本键盘上下左右键怎么解锁_笔记本电脑的上下左右键被锁住了如何解决-win7之家...
  18. Vue的缓存方法localstorage、sessionStorage
  19. 1.21.Flink Slot和并行度(parallelism)\Flink的并行度由什么决定的?\Flink的task是什么?\slot和parallelism
  20. 【漫漫转码路】Python Day 03

热门文章

  1. 85-分布式项目搭建
  2. python官网下载步骤-Python 下载及安装详细步骤
  3. IX. Spring Boot应用
  4. 基于arudino和HC08的舵机控制
  5. 幼儿园里开设计算机课程,幼儿园电脑基础课程
  6. 浅谈Python两大爬虫库——urllib库和requests库区别
  7. 不断拾金——导出为EXCEL
  8. 小程序的服务器费用谁出,小程序服务器费用一年多少
  9. SSH 隧道转发——筑梦之路
  10. 世界知名大学课件下载