专业游戏门户,分享手游网游单机游戏百科知识攻略!

嗨游网
嗨游网

SQL标准是什么意思,SQL标准有哪些?

来源:小嗨整编  作者:小嗨  发布时间:2023-02-08 12:09
摘要:SQL标准是什么意思,SQL标准有哪些?SQL的英文全称叫做StructuredQueryLanguage,它有一个很强大的功能,就是能在各个数据表之间进行连接查询(Query)。这是因为SQL是建立在关系型数据库基础上的一种语言。关系型数...

SQL标准是什么意思,SQL标准有哪些?SQL的英文全称叫做 Structured QueryLanguage,它有一个很强大的功能,就是能在各个数据表之间进行连接查询(Query)。这是因为SQL是建立在关系型数据库基础上的一种语言。关系型数据库的典型数据结构就是数据表,这些数据表的组成都是结构化的(Structured)。你可以把关系模型理解成一个二维表格模型,这个二维表格是由行(row)和列(column)组成的。每一个行(row)就是一条数据,每一列(column)就是数据在某一维度的属性。

正是因为在数据库中,表的组成是基于关系模型的,所以一个表就是一个关系。一个数据库中可以包括多个表,也就是存在多种数据之间的关系。而我们之所以能使用 SQL 语言对各个数据表进行复杂查询,核心就在于连接,它可以用一条 SELECT 语句在多张表之间进行查询。你也可以理解为,关系型数据库的核心之一就是连接。

既然连接在SQL中这么重要,那么针对今天的内容,需要你从以下几个方面进行掌握:

  1. SQL实际上存在不同的标准,不同标准下的连接定义也有不同。你首先需要了解常用的 SQL标准有哪些;

  2. 了解了SQL的标准之后,我们从SQL92标准入门,来看下连接表的种类有哪些;

  3. 针对一个实际的数据库表,如果你想要做数据统计,需要学会使用跨表的连接进行操作。

一、常用的SQL标准有哪些

在正式开始讲连接表的种类时,我们首先需要知道 SQL 存在不同版本的标准规范,因为不同规范下的表连接操作是有区别的。

SQL 有两个主要的标准,分别是 SQL92 和 SQL99。92 和99 代表了标准提出的时间,SQL92 就是 92 年提出的标准规范。当然除了 SQL92 和 SQL99 以外,还存在 SQL-86、SQL-89、SQL:2003、SQL:2008、SQL:2011 和 SQL:2016等其他的标准。

这么多标准,到底该学习哪个呢?实际上最重要的 SQL 标准就是 SQL92 和 SQL99。一般来说 SQL92 的形式更简单,但是写的 SQL 语句会比较长,可读性较差。而 SQL99相比于 SQL92 来说,语法更加复杂,但可读性更强。我们从这两个标准发布的页数也能看出,SQL92 的标准有 500页,而 SQL99 标准超过了 1000 页。实际上你不用担心要学习这么多内容,基本上从 SQL99 之后,很少有人能掌握所有内容,因为确实太多了。就好比我们使用 Windows、Linux 和 Office 的时候,很少有人能掌握全部内容一样。我们只需要掌握一些核心的功能,满足日常工作的需求即可。

二、在SQL92中是如何使用连接的

相比于 SQL99,SQL92 规则更简单,更适合入门。在这篇文章中,我会先讲 SQL92 是如何对连接表进行操作的,下一篇文章再讲 SQL99,到时候你可以对比下这两者之间有什么区别。

在进行连接之前,我们需要用数据表做举例。这里我创建了NBA 球员和球队两张表。

其中 player 表为球员表,一共有 37 个球员,如下所示:

team 表为球队表,一共有 3 支球队,如下所示:

有了这两个数据表之后,我们再来看下 SQL92 中的 5 种连接方式,它们分别是笛卡尔积、等值连接、非等值连接、外连接(左连接、右连接)和自连接。

三、笛卡尔积

笛卡尔乘积是一个数学运算。假设我有两个集合 X 和 Y,那么 X 和 Y 的笛卡尔积就是 X 和 Y 的所有可能组合,也就是第一个对象来自于 X,第二个对象来自于 Y 的所有可能。我们假定 player 表的数据是集合 X,先进行 SQL 查询:

SELECT * FROM player

再假定 team 表的数据为集合 Y,同样需要进行 SQL 查询:

SELECT * FROM team

你会看到运行结果会显示出上面的两张表格。

接着我们再来看下两张表的笛卡尔积的结果,这是笛卡尔积的调用方式:

SQL: SELECT * FROM player, team

运行结果(一共 37*3=111 条记录):

笛卡尔积也称为交叉连接,英文是 CROSS JOIN,它的作用就是可以把任意表进行连接,即使这两张表不相关。但我们通常进行连接还是需要筛选的,因此你需要在连接后面加上

WHERE 子句,也就是作为过滤条件对连接数据进行筛选。比如后面要讲到的等值连接。

四、等值连接

两张表的等值连接就是用两张表中都存在的列进行连接。我们也可以对多张表进行等值连接。

针对 player 表和 team 表都存在 team_id 这一列,我们可以用等值连接进行查询。

SQL: SELECT player_id, player.team_id, player_name, hei

运行结果(一共 37 条记录):

我们在进行等值连接的时候,可以使用表的别名,这样会让SQL 语句更简洁:

SELECT player_id, a.team_id, player_name, height, team_

需要注意的是,如果我们使用了表的别名,在查询字段中就只能使用别名进行代替,不能使用原有的表名,比如下面的SQL 查询就会报错:

SELECT player_id, player.team_id, player_name, height,

五、非等值连接


本文地址:网络百科频道 https://www.eeeoo.cn/wangluo/903052.html,嗨游网一个专业手游免费下载攻略知识分享平台,本站部分内容来自网络分享,不对内容负责,如有涉及到您的权益,请联系我们删除,谢谢!


网络百科
小编:小嗨整编
相关文章相关阅读
  • sql教程快速入门(sql零基础入门教程)

    sql教程快速入门(sql零基础入门教程)

    sql教程快速入门(sql零基础入门教程)sql是一种用于管理和处理关系型数据库的编程语言。它主要用于查询、更新、删除和管理数据库中的数据。SQL是关系型数据库操作的标准语言,被广泛应用于各种数据库系统中,如MySQL、Oracle、SQL...

  • mysql安装教程图解(mysql安装教程最新)

    mysql安装教程图解(mysql安装教程最新)

    mysql安装教程图解(mysql安装教程最新)MySQL是当前最流行的关系型数据库管理系统之一,在Web应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem:关系数据库管理系统)应用软...

  • 微信支付接口收费标准(微信支付接口申请条件)

    微信支付接口收费标准(微信支付接口申请条件)

    微信支付接口收费标准(微信支付接口申请条件)在通常情况下,申请微信支付的官方支付接口,费率为0.6%(即千分之六)。这也就意味着1000元的交易费用需要6元的手续费。微信支付接口申请条件需要准备以下材料吧:1、营业执照:为了证明你是一家合法...

  • 微信转账手续费收取标准(微信转账手续费怎么避免)?

    微信转账手续费收取标准(微信转账手续费怎么避免)?

    微信转账手续费收取标准(微信转账手续费怎么避免)?微信转账的基础手续费为每笔转账金额的0.1%,最低不低于0.1元。举例来说,如果你想转账100元,那么手续费就是100元*0.1%=0.1元。而如果你转账金额较小,比如10元,那手续费就是0...

  • 转转大师数据恢复软件收费标准(转转大师数据恢复软件怎么用)?

    转转大师数据恢复软件收费标准(转转大师数据恢复软件怎么用)?

    转转大师数据恢复软件收费标准(转转大师数据恢复软件怎么用)?转转大师数据恢复软件以其全面的数据恢复能力著称,支持从电脑、硬盘、U盘、内存卡、相机、行车记录仪等多种设备中恢复数据。价格大约是100美元~200元左右。采用前沿的扫描算法与恢复技...

  • 卡巴斯基杀毒软件收费标准(卡巴斯基杀毒软件官网)

    卡巴斯基杀毒软件收费标准(卡巴斯基杀毒软件官网)

    卡巴斯基杀毒软件收费标准(卡巴斯基杀毒软件官网)卡巴斯基杀毒软件官方版是一款电脑反病毒的免费杀毒软件,改进了安全支付、上网管理、启发式检测技术、反钓鱼保护、受信任应用程序模式等功能,能够更好的保护用户的计算机安全,可以保护计算机免受病毒、蠕...

  • 云代账软件收费标准(云代账软件操作流程)

    云代账软件收费标准(云代账软件操作流程)

    云代账软件收费标准(云代账软件操作流程)云代账是集团是代账行业财务软件的领军企业,是全国首家提出代账行业CRS管理与服务理念的企业。云代账基础版本价格大约在310-420元之间,高级版本价格大约在420-540元之间。云代账软件操作流程1、...

  • 魔兽世界收费模式(魔兽世界收费标准2024)

    魔兽世界收费模式(魔兽世界收费标准2024)

    魔兽世界收费模式(魔兽世界收费标准2024)魔兽世界从一开始就是一个计时收费的游戏,刚开始的时候一直是点卡收费。但是到了后来就直接强制改成了月卡收费,到目前为止,只剩下亚服那边还在延用点卡制度,也就是台服,其它欧美服国服之类的,都早已经是月...

  • 周排行
  • 月排行
  • 年排行

精彩推荐