`
frank1998819
  • 浏览: 758672 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类

SQL join 学习(一) (转)

    博客分类:
  • SQL
SQL 
阅读更多

SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据。

Join 和 Key

有时为了得到完整的结果,我们需要从两个或更多的表中获取结果。我们就需要执行 join。

数据库中的表可通过键将彼此联系起来。主键(Primary Key)是一个列,在这个列中的每一行的值都是唯一的。在表中,每个主键的值都是唯一的。这样做的目的是在不重复每个表中的所有数据的情况下,把表间的数据交叉捆绑在一起。

请看 "Persons" 表:

Id_P LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing

请注意,"Id_P" 列是 Persons 表中的的主键。这意味着没有两行能够拥有相同的 Id_P。即使两个人的姓名完全相同,Id_P 也可以区分他们。

接下来请看 "Orders" 表:

Id_O OrderNo Id_P
1 77895 3
2 44678 3
3 22456 1
4 24562 1
5 34764 65

请注意,"Id_O" 列是 Orders 表中的的主键,同时,"Orders" 表中的 "Id_P" 列用于引用 "Persons" 表中的人,而无需使用他们的确切姓名。

请留意,"Id_P" 列把上面的两个表联系了起来。

引用两个表

我们可以通过引用两个表的方式,从两个表中获取数据:

谁订购了产品,并且他们订购了什么产品?

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons, Orders
WHERE Persons.Id_P = Orders.Id_P 

结果集:

LastName FirstName OrderNo
Adams John 22456
Adams John 24562
Carter Thomas 77895
Carter Thomas 44678

SQL JOIN - 使用 Join

除了上面的方法,我们也可以使用关键词 JOIN 来从两个表中获取数据。

如果我们希望列出所有人的定购,可以使用下面的 SELECT 语句:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.Id_P = Orders.Id_P
ORDER BY Persons.LastName

结果集:

LastName FirstName OrderNo
Adams John 22456
Adams John 24562
Carter Thomas 77895
Carter Thomas 44678
分享到:
评论

相关推荐

    SQL join 完全用法

    SQL join 完全用法 SQL join 完全用法 学习sql join

    sqljoin示例

    sqljoin示例,包含左联右联内联以及外联等连接方式是学习SQL必不可少的知识

    sql join( inner join, outer join) 分析

    在SQL(结构化查询语言)中,JOIN操作是用于合并两个或多个表的数据,以便根据它们之间的关联性创建新的结果集。JOIN关键字是SQL查询中的关键部分,它允许我们在不同的表之间建立联系,以获取更丰富的信息。在这个...

    SQL 之JOIN 用法完全版.rar

    在SQL(Structured Query Language)中,JOIN操作是用于合并两个或更多个表的数据,以便根据它们之间的关联性创建更复杂的查询结果。JOIN是数据库查询中的关键部分,它允许我们在多个表之间建立联系,从而获取更丰富...

    SQL学习七-JOIN中的SQL

    SQL学习七-JOIN中的SQL

    Sql语言学习全套-给力推荐

    Sql语言学习全套-给力推荐 Sql语言学习全套-给力推荐 alterfunction.sql alterproc_alterfunc.sql createtable.sql CURSOR.sql cursor_declare_open.sql functions.sql insert work.sql insertdualdata.sql...

    sql学习心得5篇汇总.docx

    总的来说,SQL的学习是一个持续的过程,涵盖理论与实践,不仅可以帮助我们在互联网行业中有效地处理数据,还可以提升我们的问题解决和逻辑思维能力。无论是否直接从事数据库相关工作,了解和掌握SQL都是非常有价值的...

    SQL学习(SQL语言学习的DOC资料)

    SQL,全称Structured Query Language,即结构化...这个"SQL学习"的DOC资料很可能涵盖了以上所有方面,包括实例、练习和解答,对于初学者来说是一份非常实用的资源,能够帮助他们快速上手SQL,并逐步精通数据库管理。

    精通sqlserver学习文档

    《精通SQL Server学习文档》是一份全面且深入的教程,旨在帮助初学者和有经验的数据库管理员提升在SQL Server领域的技能。SQL(Structured Query Language)是用于管理关系数据库的强大工具,无论是在数据查询、更新...

    sqlserver学习资料

    本压缩包中的学习资料涵盖了SQL Server的基础知识到高级特性,旨在帮助用户全面掌握这一强大的数据库系统。 1. **SQL基础知识**:SQL(Structured Query Language)是用于管理关系数据库的标准语言,包括数据查询、...

    SQL经典学习教程

    《SQL经典学习教程》是一本非常适合SQL初学者的教材,涵盖了从基础到进阶的各种SQL知识,旨在帮助读者从零开始逐步掌握SQL语言。以下是该教程各章节的主要内容概述: 一、SQL*PLUS工具软件的使用 在这一章中,读者...

    sql实用学习手册

    SQL(Structured Query Language)是一种用于管理关系数据库的标准语言,广泛应用于数据查询、更新、插入和删除等操作。本篇将围绕《SQL实用学习手册》中的关键知识点进行深入探讨。 首先,SQL的基础操作包括选择...

    关于sql的left join,right join,inner join,outerjoin

    在SQL查询中,JOIN操作是连接不同表的关键技术,它允许我们从多个相关的表中获取数据。本篇文章将深入探讨四种基本的...通过不断的实践和学习,你可以更好地掌握这些JOIN类型,并在解决复杂数据查询问题时游刃有余。

    21天迅速学会sql(比较完整的sql学习手册)

    ### 21天迅速学会SQL(比较完整的SQL学习手册) #### 第一部分:SQL入门与基础知识 **标题**:21天迅速学会SQL(比较完整的SQL学习手册) ...通过实践和不断练习,相信每位学习者都能成为一名熟练的SQL用户。

    表连接 SQL JOIN 速查表

    在SQL中,表连接(JOIN)是用于合并两个或多个表的数据的关键操作,它允许你在查询时基于共同的列从不同的表中检索信息。这里我们将深入探讨几种...在学习SQL时,理解JOIN的概念及其不同变体是非常基础且重要的一步。

    U8后台维护sql经典学习资料

    《U8后台维护SQL经典学习资料详解》 在IT领域,尤其是企业信息化管理中,用友U8系统作为一款广泛使用的ERP...这份"U8后台维护sql经典学习资料"无疑是提升专业技能的宝贵资源,值得每一个U8系统使用者深入研究。

    sql server学习手册以及t-sql优化方案.zip

    1. 查询语句:深入学习SELECT语句,包括JOIN、子查询、聚合函数、窗口函数等高级查询技巧。 2. 控制流程:了解IF...ELSE、CASE、WHILE、BEGIN...END等控制流程语句,用于编写复杂的T-SQL脚本。 3. 函数:学习内置...

    learning Sql学习指南

    《SQL学习指南》是一本专为SQL初学者和进阶者设计的学习资料,包含了中文版和英文原版两部分,旨在帮助读者全面理解和掌握SQL语言的核心概念与实用技巧。SQL,全称Structured Query Language(结构化查询语言),是...

    sql server学习资料

    SQL Server是一款由微软公司开发的关系型数据库管理系统,广泛应用于企业级数据存储、管理和分析。它以其强大、稳定和高效的特点,成为了许多企业和开发者的选择。本压缩包“sql server学习资料”提供了一套全面的...

Global site tag (gtag.js) - Google Analytics