seegongsik
我的单词本
数据

把分开的表连起来,连接

订单表里只用编号记着谁买了什么。那个人的名字其实在另一张表,客户表里。那这笔订单是谁下的、叫什么名字,怎么知道? 用两张表都有的那一列,也就是客户编号,把它们配对就行。用公共列把分开的表连起来,这个办法就是连接。

01

数据分在两张表里

前面我们学过,从一张表里
挑出想要的行。
可数据通常
装不进一张表。
订单写在订单表,
人的信息写在另一张客户表。
为了不把同样的信息到处抄,
我们特意把表分开。
先把两张表并排摆出来看看?

点击展开
点击展开
点表头展开看看

点一张表展开看看。能看到订单表和客户表各放各的。

两张表看着是分开的。
订单表里有买了什么,
客户表里有人的名字。
可只看订单表,
答不出这笔订单是谁下的。
名字在那边的客户表里。
要回答跨表的问题,
就得想法子把两张表连起来。
连接的线索在哪儿呢?

02

找两张表都有的那一列

仔细看这两张表,
会发现有一列名字一样。
那就是客户编号。
订单表里有客户编号,
客户表里也有客户编号。
这样两张表都有的列,
就叫公共列。
这个公共列就是连接两者的桥。
来找找哪一列是公共的吧?

订单表客户表
选两张表都有的公共列

点一个列名。选中两张表都有的公共列就会亮起,选错会提示你。

找到公共列了。
客户编号在两张表里都有。
如果这一列的值相同,
那两张表里的那两行就指同一个人。
订单表里的客户编号 7
和客户表里的客户编号 7,
说的是同一个人。
所以拿这一列当向导,
把行配成对就行了。

03

用公共列把行配对

现在来真正配一配。
从订单表里挑一行。
看它的客户编号。
再到客户表里
找客户编号一样的那一行。
两边客户编号相同,
这两行就是一对。
一行订单和一行人,
就这样手拉手。

订单表
客户表
3|敏书
7|河俊
点订单的一行找它的配对

点订单表里的一行。客户编号相同的客户表那一行会连过来,配成一对。

订单和人配成对了。
客户编号相同的行,
稳稳地手拉手。
现在能直接读出
这笔订单是谁下的、叫什么名字。
本来只看得到编号的订单,
旁边跟来了人的名字。
对都配齐了,
把两者并成一行看看?

04

两张表合成一张

把配好的两行并到一起,
就成了一行更长的新表。
订单的格子旁边,
那个人的格子排过来。
公共列只需出现一次,
所以编号干干净净就一格。
这样合起来的表,
能当作一张表来用。
买了什么和谁买的,
现在都在同一行里了。

客户编号
物品
7
铅笔
3
本子
7
橡皮
客户编号
姓名
7
河俊
3
敏书
7
河俊
点合并把两张表连成一张

点合并。两张表按公共列一行行连起来,买了什么、谁买的就汇到一张表里。

干净地合成了一张表。
现在订单和人,
一眼就能一起看到。
表照样分开放着,
需要时用公共列连起来,
就不必把同样的信息抄一遍。
分开存的省心,
连起来看的方便,
连接把两样都给了我们。
现在来把整件事理一理。

05

来理一理

归成一句话,是这样。
数据分在好几张表里。
要回答跨表的问题,
就找两张表都有的公共列。
把这一列值相同的行配成对,
两张表连成一行。
这样就能当一张表来用,
连这笔订单是谁下的也能知道。
用公共列配对相连,这就是连接。

依次点要点回顾一下

依次点要点回顾一下。(两张表 → 找公共列 → 用公共列配对 → 合成一张表)

现在你知道了怎么用公共列
把分开的表连起来。
本来困在一张表里的问题,
靠一座桥就痛快地解开了。
分着存、需要时再连,
这种本事就是处理数据的力量。
下回又能用什么办法
把好几张表处理得更好呢?
咱们接着一起看下去。

一句话总结数据通常分散在好几张表里。订单在订单表,人的信息在客户表,各放各的。只看一张表,答不了跨表的问题。所以我们找两张表都有的公共列,比如客户编号。把这一列值相同的行配成对,两张表就连成一行。这样连起来后,就能当作一张表来用,回答这笔订单是谁下的之类的问题。一句话,用公共列把行配对、连起分开的表,就是连接。
数据
如果有帮助,请支持我们