`

连接查询

    博客分类:
  • sql
阅读更多
自然连接(INNER JOIN)也叫内连接
SELECT PUB_NAME,TITLE
FROM TITLES,PUBLISHERS
WHERE TITLES.PUB_ID=PUBLISHERS.PUB_ID
或写成:
SELECT PUB_NAME,TITLE
FROM TITLES INNER JOIN PUBLISHERS
ON TITLES.PUB_ID=PUBLISHERS.PUB_ID
其中,INNER JOIN是SQL Server的缺省连接,可简写为JOIN。在JOIN后面指定哪些表作连接。ON后面指定了连接的条件。
以上操作的过程如下:
1) 从TITLES表中取出一条符合其条件的记录。
2) 扫描PUBLISHERS表,分别检查每条记录是否在连接属性上同表TITLES取出的记录相
3) 相等就显示信息。继续从表TITLES中取下一条记录,重复步骤2。其实,两个或多个表要做连接,那么这些表之间必然存在着主键和外键的关系。所以,只需要将这些键的关系列出,就可以得出表连接的结果。如上例中, PUB_ID是PUBLISHERS表的主键, PUB_ID又是
TITLES表的外键,参照PUBLISHERS表中的PUB_ID .所以,这两个表的连接条件就是TITLES.PUB_ID=PUBLISHERS. PUB_ID。
  
外连接  
创建外连接规则:
1) 外连接显示外部表中的所有行,包括与相关表不相配的行在内。
2) 外连接只能在两张表之间进行。
3) 不能在内部表上使用IS NULL检索条件。

SQL语句:select * from A right join B on A.aID = B.bID;
Oracle特有的方法 select * from A,B on A.aID(+)= B.bID;

right join是以B表的记录为基础的,A可以看成左表,B可以看成右表,right join是以右表为准的。换句话说,右表(B)的记录将会全部表示出来,而左表(A)只会显示符合搜索条件的记录(例子中为: A.aID = B.bID)。A表记录不足的地方均为NULL。

SQL语句:select * from A left join B on A.aID = B.bID;
Oracle特有的方法 select * from A,B on A.aID= B.bID(+);

left join是以A表的记录为基础的,A可以看成左表,B可以看成右表,left join是以左表为准的。换句话说,左表(A)的记录将会全部表示出来,而右表(B)只会显示符合搜索条件的记录(例子中为: A.aID = B.bID)。B表记录不足的地方均为NULL。
分享到:
评论

相关推荐

    数据库连接查询、子查询

    数据库连接查询和子查询 数据库连接查询和子查询是数据库查询语言中两个重要的概念。连接查询是指将两个或多个表连接起来,以便从多个表中检索数据。子查询是指在 WHERE 或 HAVING 子句中使用的SELECT语句。 连接...

    数据库作业7:SQL练习4 – SELECT(连接查询、嵌套查询)

    数据查询2—连接查询:同时涉及两个以上的表的查询 连接条件:用来连接两个表的条件 [.] [.] 连接字段:连接条件中的列名称(注意:连接字段类型必须是可比的,但名字不必相同) 连接查询—(1)等值与非等值连接查询:...

    【实验报告】数据库的简单查询和连接查询实验

    【实验报告】数据库的简单查询和连接查询实验 在本次实验中,我们专注于掌握SQL查询语句,包括单表查询和多表连接查询,旨在深化对关系、属性、主键和外键的理解。实验环境是Microsoft SQL Server或MySQL,实验前...

    SQL子查询、内连接和外连接查询

    【SQL子查询、内连接和外连接查询】 在SQL中,子查询、内连接和外连接是进行复杂数据检索的关键工具。这些概念的理解和熟练应用对于数据库管理与数据分析至关重要。 **子查询** 是一个嵌套在其他SQL语句中的查询,...

    在SAP前台用TCODE:SE16H实现表连接查询

    "SAP SE16H 表连接查询详解" 在 SAP 系统中,SE16H 是一个功能强大的工具,能够实现复杂的表连接查询。今天,我们将详细介绍如何使用 SE16H 实现表连接查询,并提供一个实际的示例。 SE16H 介绍 SE16H 是 SAP ...

    Oracle外连接查询

    Oracle的外连接查询是数据库操作中的重要组成部分,它允许用户获取来自两个或更多表的数据,即使在某些情况下,这些表之间的连接条件不完全匹配。在理解外连接查询之前,我们首先要了解内连接,即最基础的相等连接。...

    数据库实验报告——数据库的简单查询和连接查询

    实验报告的主题聚焦于数据库的简单查询和连接查询,旨在通过SQL Server查询分析器来实践和深化对SQL语言的理解。实验的目的是让学生掌握SQL Server查询分析器的使用,熟悉SQL查询语句,特别是针对数据表的查询操作,...

    数据库连接查询相关外连接内连接

    【数据库连接查询详解】 在数据库管理系统中,查询是获取数据的核心操作。本篇文章将深入探讨数据库连接查询,包括内连接、外连接和交叉连接等,同时结合实例来帮助理解。 首先,了解数据库的基础架构。Oracle...

    SQL连接查询语句实例

    在SQL查询中,连接查询是将两个或多个表的数据结合在一起的重要操作,这对于数据分析和信息检索至关重要。本文将深入探讨几种主要的SQL连接查询类型,包括内连接(INNER JOIN)、外连接(FULL JOIN、LEFT JOIN、...

    数据库系统概论数据查询之连接查询.pdf

    数据库系统中的连接查询是SQL语言中的重要组成部分,用于从多个表中检索满足特定条件的数据。在数据查询过程中,连接查询允许我们从一个或多个表中提取相关联的信息,以满足复杂的业务需求。以下是对连接查询的详细...

    数据库实验报告-数据库的简单查询和连接查询

    根据给定的文件信息,以下是对“数据库实验报告-数据库的简单查询和连接查询”的详细解析,涵盖了实验目的、原理、步骤以及实验内容的关键知识点。 ### 实验目的 本实验旨在使学生掌握SQL Server查询分析器的使用...

    数据库原理及运用实验四SQL连接查询.doc

    数据库原理及运用实验四 SQL 连接查询 本实验报告主要探讨了数据库原理的应用,通过 SQL 连接查询实现了多种复杂的查询操作。以下是实验报告的详细解释: 一、数据库原理 数据库原理是数据库系统的基础理论,它...

    oracle连接查询SQL性能测试

    标题“Oracle连接查询SQL性能测试”涉及的是数据库管理和优化领域,特别是针对Oracle数据库系统的SQL查询性能分析。在Oracle中,连接查询(JOINs)是整合多个表数据的关键操作,其性能直接影响到数据库的整体效率。...

    第十一章连接查询和分组查询.zip

    在SQL(结构化查询语言)中,连接查询和分组查询是两个非常重要的概念,用于处理和分析数据库中的数据。本章将详细讲解这两个概念及其应用。 首先,我们来看连接查询。连接查询允许我们将多个表的数据结合在一起,...

    test_lesson07 SQL99语法连接查询.pdf

    在SQL99语法中,连接查询是数据库操作中不可或缺的一部分,它允许我们从多个表中检索数据,并将这些数据关联起来。在这个测试中,我们将探讨三个具体的查询需求,每个需求都涉及到了不同的连接类型和处理缺失值的...

    HQL连接查询和注解使用总结

    ### HQL连接查询和注解使用总结 #### HQL连接查询概述 HQL(Hibernate Query Language)是一种面向对象的查询语言,它允许开发者以一种更自然的方式查询对象,而不是直接查询底层数据库表。HQL支持多种连接查询...

    SQL多表连接查询优化的相关研究

    标题中的“SQL多表连接查询优化的相关研究”指的是在数据库管理中,如何高效地执行涉及多个数据表的SQL查询操作。在SQL(Structured Query Language)中,连接查询(JOIN)是用于合并两个或更多表中的数据的关键技术...

    mysql连接查询

    MySQL 连接查询详解 MySQL 连接查询是指在多个表之间进行查询操作,以获取所需的数据。根据连接的方式不同,可以将连接查询分为外连接和内连接两种类型。下面我们将详细介绍这两种类型的连接查询。 一、外连接 外...

    Gbase 8s查询之连接查询

    Gbase 8s 查询之连接查询 Gbase 8s 查询之连接查询是关系数据库中的一种强大处理能力,能够将不同的数据按一定条件连接在一起。在 Gbase 8s 中,连接查询可以分为内连接、外连接和自连接三种类型。 内连接是将两个...

    数据库多表连接查询详解

    数据库多表连接查询详解 连接查询是关系数据库管理系统中的一种重要查询方式,它允许用户从多个表中检索数据,并将它们组合成一个结果集。连接查询的基本思想是通过连接运算符在多个表之间建立关系,从而实现数据的...

Global site tag (gtag.js) - Google Analytics