`

SELECT语句中的自连接

 
阅读更多

到目前为止,我们连接的都是两张不同的表,那么能不能对一张表进行自我连接呢?答案是肯定的。
有没有必要对一张表进行自我连接呢?答案也是肯定的。
表的别名:
一张表可以自我连接。进行自连接时我们需要一个机制来区分一个表的两个实例。
在FROM clause(子句)中我们可以给这个表取不同的别名, 然后在语句的其它需要使用到该别名的地方
用dot(点)来连接该别名和字段名。
我们在这里同样给出两个表来对自连接进行解释。
爱丁堡公交线路,
车站表:
stops(id, name)
公交线路表:
route(num, company, pos, stop)
一、对公交线路表route进行自连接。
SELECT * FROM route R1, route R2
WHERE R1.num=R2.num AND R1.company=R2.company
我们route表用字段(num, company)来进行自连接. 结果是什么意思呢?
你可以知道每条公交线路的任意两个可联通的车站。
二、用stop字段来对route(公交线路表)进行自连接。
SELECT * FROM route R1, route R2
WHERE R1.stop=R2.stop;
查询的结果就是共用同一车站的所有公交线。这个结果对换乘是不是很有意义呢。
从这两个例子我们可以看出,自连接的语法结构很简单,但语意结果往往不是
那么容易理解。就我们这里所列出的两个表,如果运用得当,能解决很多实际问题,
例如,任意两个站点之间如何换乘。
SELECT R1.company, R1.num
FROM route R1, route R2, stops S1, stops S2
WHERE R1.num=R2.num AND R1.company=R2.company
AND R1.stop=S1.id AND R2.stop=S2.id
AND S1.name='Craiglockhart'
AND S2.name='Tollcross'

分享到:
评论

相关推荐

    根据update语句自动生成select语句

    在数据库管理中,UPDATE语句用于修改已存在的数据记录,而SELECT语句则用于查询数据。在某些场景下,我们可能需要从UPDATE语句转换为SELECT语句,以验证更新操作将影响哪些行或者理解更新逻辑。这在调试、数据分析或...

    子查询是指一条SELECT语句作为另一条SELECT语句的一部分,外层的SELCT语句称为外部查询,内层的SELECT语句称为内部查询(或子查询)

    子查询是SQL语言中一种重要的查询方式,它允许将一条SELECT语句作为另一条SELECT语句的一部分使用。这种结构化的设计使得数据库查询更为灵活和强大。具体而言,外层的SELECT语句被称为外部查询,而内层的SELECT语句...

    Select 语句的基本使用

    Select 语句是 Transact-SQL 中最基本也是最重要的一种查询语句,用于从数据库中检索数据。下面将详细介绍 Select 语句的基本使用。 一、 简单查询 简单的 Transact-SQL 查询只包括选择列表、FROM 子句和 WHERE ...

    sql之select语句

    在SQL中,`SELECT`语句是用于从数据库中检索数据的基本工具,它允许我们根据需求选择特定的列、过滤行、对数据进行排序和分组。本篇将详细讲解`SELECT`语句,特别是涉及连接查询的部分。 首先,我们要了解`SELECT`...

    SELECT语句的应用 - MS SQL

    本主题将聚焦于SELECT语句在MS SQL中的应用,这是一种用于从数据库中检索数据的关键命令。 一、SELECT语句基础 SELECT语句是最基本的查询工具,它允许用户从一个或多个表中选择特定的数据行和列。其基本语法如下:...

    数据库实验2的实验报告1. 在 studentsdb 数据库中使用 SELECT 语句进行基本查询。 (1)在 student

    实验报告主要围绕数据库查询展开,涉及SQL语言中的SELECT语句及其相关子句的使用,包括基本查询、条件查询、GROUP BY、ORDER BY、UNION、嵌套查询和连接查询等。以下是具体的知识点详解: 1. **SELECT基本查询**: ...

    实验七 简单SELECT语句

    本次实验聚焦于SQL Server中的简单SELECT语句,旨在帮助学习者深入理解并熟练运用SELECT语句进行基础数据查询、排序及连接查询。通过本实验,学习者不仅能够观察查询结果,感受SELECT语句的实际应用价值,还能够在...

    select form where 语句

    SELECT 语句是 SQL 中最基本也是最重要的语句之一,它用于从数据库中检索数据。 SELECT 语句的基本结构为:SELECT 语句、FROM 语句、WHERE 语句。其中,SELECT 语句用于指定要检索的列,FROM 语句用于指定要检索的...

    Select语句大全,适合初学者

    ### Select语句大全,适合初学者 在数据库查询语言中,`SELECT`语句是最基本也是最常用的命令之一。它允许用户从一个或多个表中提取数据,并对这些数据进行筛选、排序等操作。尽管`SELECT`语句的完整语法可能显得...

    基本select 语句总结

    SELECT 语句是 SQL 中最基本的语句,用于从数据库中检索数据。基本查询语法的格式如下: ```sql SELECT column1, column2, ... FROM tablename; ``` 其中,`column1`, `column2`, ... 是要检索的列名,`tablename` ...

    SQL教程之SELECT语句中的表连接

    `SELECT`语句中的`JOIN`短语用于连接`album`和`track`表,基于它们共有的字段`album.asin`和`track.album`。连接后的结果是一个临时表,包含了来自两个表的所有字段。这样,可以轻松地执行涉及多个表的查询,比如找...

    SELECT语句在SQL中的应用实例.pdf

    SELECT 语句在 SQL 中的应用实例 SELECT 语句是 SQL 中使用最频繁的语句之一,是 SQL 的核心。熟练掌握 SELECT 语句就等于掌握了 SQL 语言的精髓。本文将通过六个实例来展示 SELECT 语句的具体应用。 实例一:简单...

    SQL Select语句完整的执行顺序

    本文将详细介绍SQL Select语句的完整执行顺序,并解释每个步骤的意义。 #### 执行顺序概览 SQL Select语句的执行顺序大致可以分为以下几个步骤: 1. **FROM 子句**:确定查询的数据源。 2. **JOIN 子句**:连接多...

    ABAP select 语句

    本文将深入探讨ABAP中的SELECT语句,特别是涉及到表连接的部分。 1. **内联接(INNER JOIN)** 内联接是SELECT语句中用于从多个表中获取数据的常见方式,它返回两个表中满足特定条件的匹配行。语法如下: ```sql...

    SQL Server中select语句的使用技巧.pdf

    本文主要介绍了SQL Server中select语句的使用技巧,以商品信息管理数据库为例,详细介绍了关系数据库管理系统中SQL查询语句—select的基本用法和使用技巧,包括单表的基本查询、关键字辅助查询、统计查询以及多表的...

    SELECT语句执行顺序

    在ANSI SQL标准中,SELECT语句是数据库查询语言的核心组成部分,用于从一个或多个表中检索数据。了解SELECT语句的执行顺序对于编写高效、正确的SQL查询至关重要。本文将详细介绍SELECT语句各部分的执行顺序,并通过...

    基本SQL-SELECT语句

    在本篇文章中,我们将深入探讨SELECT语句,这是SQL中最核心的部分,用于从数据库中检索数据。 1. **SQL*PLUS**:SQL*PLUS是Oracle公司提供的一个命令行工具,它允许用户与Oracle数据库进行交互。虽然它不能直接控制...

    数据库知识小结一些select语句的用法

    在本文中,我们将深入探讨一些关于SELECT语句的常见用法,这些用法在日常数据库管理和开发中非常实用。 1. 列出数据库中所有表名: 使用`SELECT name FROM sysobjects WHERE type='U'`,这里的`sysobjects`是系统...

    SQL基本SELECT查询语句_内外连接

    SQL基本SELECT查询语句_内外连接

    SQL语句中SELECT语句的执行顺序

    ### SQL语句中SELECT语句的执行顺序 在SQL语言中,`SELECT`语句是进行数据查询的核心工具。为了确保查询结果的准确性和效率,理解`SELECT`语句内部的执行顺序至关重要。本文将详细解析`SELECT`语句各子句的执行...

Global site tag (gtag.js) - Google Analytics