SQL 数据库表连接全解析
1. 连接字段的选择
在编写简单查询时,了解使用哪些字段来连接表至关重要。有时,只需将一个表中的一个字段与另一个表中的一个字段连接;偶尔,需要使用每个表中的两个或更多字段进行连接。最好在编写查询之前,由数据库设计人员或其他用户说明所需的字段。
在 PrestigeCars 数据集中,所有表的连接都使用单个字段。有些字段包含有意义的数据,如国家表中的 Countryiso3 字段;而其他表使用对用户来说没有内在意义的值,如模型表中的 ModelID 字段,甚至会使用无意义的字符串来连接表,销售表中的 SalesID 字段就是一个例子。
需要注意的是,用于连接表的字段可以是字母或数字,对人类是否可理解并不重要。对于查询数据库的数据分析师来说,关键是要知道连接哪些字段,并且数据集的设计要确保连接能够正常工作。Databricks 可能会使用数字作为连接字段的数据类型,虽然乍一看可能很奇怪,但这通常是一种高效的表连接和数据检索方式,例如在 CarSales 数据库中使用 MakeID 和 ModelID 字段连接表。
2. 连接的微妙之处
假设有一个客户表,其中的国家字段只包含客户所在国家的 ISO 两位字符代码,而我们希望显示每个国家的全名。此时,发现国家表不仅包含两位 ISO 代码,还包含国家的全名。通过连接这两个表,就可以获取所需的数据。
以下是实现该功能的 SQL 代码:
SELECT DISTINCT CountryName
FROM Customer
INNER JOIN
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



