使用引用列连接表让我们尝试创建一个样例雇员数据库

Zoho Reports 的一个重要功能是它对关系数据建模的支持。您可以创建或导入由关系数据库中的多个相关表组成的数据库。在关系数据库中,表是使用外键关系关联的。在 Zoho Reports 中,这是使用参考列功能完成的,该功能可以将一个表中的列指向另一个表中的列。

使用参考栏等功能,您可以:

一旦您使用参考列关联两个表,Zoho Reports 将使用此信息使您能够通过组合这些表中的列来创建报告。这将在本文档的使用自动连接连接表部分进行更详细的讨论。

使用引用列连接表

让我们尝试通过创建一个示例员工数据库来进行解释。假设员工数据库由两个表部门和员工组成。部门表包含两列 – 部门名称和员工 ID。

员工表包含员工姓名及其各自的员工 ID。每个员工所属的部门来自第三列的部门 ID。

我们定义departments表中的department ID列被employees表中的department ID列引用。单击雇员表中的编辑设计按钮以定义此关联。双击参考列字段的单元格,单元格中的下拉框将列出不同的表及其列。在我们的例子中,我们选择了部门表的部门 ID。

现在将出现下面显示的对话框,其中包含在转换期间处理错误和维护数据完整性的选项。

以下是“设计更改设置”对话框中可用选项的简要说明。

如果转换出错怎么办?

将列更改为引用列可能会导致错误。此选项列出了在引用列的转换过程中发生错误时要执行的操作。选项是:

删除引用列(父表)的值时:

本部分提供了在删除父表(您正在引用的表)中的记录时子表(您定义引用的表)可以执行的操作的选项。此选项将在下一个主题部分详细讨论。

单击确定,Zoho Analytics 将创建表之间的引用列关系。

当一个新的行被添加到一个引用另一个表的列的表中时,所有的值都会被自动列出。例如,添加一个新员工。部门 ID 将列在部门列中,然后您可以选择新员工所属的相应部门。

图片[1]-使用引用列连接表让我们尝试创建一个样例雇员数据库-唐朝资源网

强制数据完整性

为确保在从相关表中删除数据行时保持数据完整性,Zoho Analytics 支持以下功能。

这些选项基本上指定了子表(您定义引用的表)在父表(您正在引用的表)中删除记录时可以执行的操作。

保留子表数据

当在打开带有引用列关联表的“设计更改设置”对话框中选择此(子)表的无相应操作选项时,此功能可用。选择此选项后,即使删除了父表中的相应数据,子表中的数据也会保留。强烈推荐使用此选项,因为它提供了高性能的数据上传(添加/修改/删除记录)到表。

级联删除

当使用引用列关联表并且在出现的“设计更改设置”对话框中选择了“从子表中删除相应行”选项时,此功能可用。选择此选项后,删除父表中的行将依次导致 Zoho Reports 删除子表中的所有对应行(Zoho Reports 中的父表和子表使用上面讨论的参考列功能相关)。此选项基本上确保子表中的任何行都会在父表中具有相应的关联行。这称为在关系建模中强制数据完整性。

图片[2]-使用引用列连接表让我们尝试创建一个样例雇员数据库-唐朝资源网

继续上面的例子现有关系数据库如下,如果从部门表(父表)中删除了任何一个部门,那么所有员工都会自动从员工表(子表)中删除。假设删除了财务部门(行)。

这将导致相应的员工行被删除。

删除时为空

当定义了参考列并且在“设计更改设置”对话框中选择了将子表对应的值设置为 Null 选项时,此功能可用。如果选择了该选项,并且删除了父表中的一行,那么子表中对应行的引用列值将被设置为NULL(即为空)。这意味着即使父表中没有关联的行,您也允许子表中的行存在。

在上面的例子中,如果财务部门(行)被删除并启用该选项,那么employees表中所有对应的行都将被设置为NULL,如下所示。

图片[3]-使用引用列连接表让我们尝试创建一个样例雇员数据库-唐朝资源网

使用引用列连接表

参考列可用于连接需要从报告数据库中的 2 个或更多表中检索数据的表。在 Zoho Reports 中,您可以通过以下 2 种方式连接具有引用关系的表格:

使用自动连接来连接表

(观看有关自动连接表格和创建报告的视频)

在创建报表时,Zoho Reports 为您提供了一项称为自动连接的特殊功能,可用于自动连接使用参考列连接的表。选择要在其上创建报告的表后,自动连接功能会确定所选表是否对数据库中的其他表有任何引用。如果有,自动连接将在报表设计器的列列表面板中列出关联表的所有列。

列出后,您可以通过将所需列从列表拖到各个字段来创建报告。 Zoho Reports 将连接相应的表并获取所需的数据以生成报告。 (您也可以使用查找表连接表。请参阅主题使用查找表连接表)。

以下示例显示了部门和相应员工计数的数据透视表,使用员工和部门表中的自动联接功能创建。

图片[4]-使用引用列连接表让我们尝试创建一个样例雇员数据库-唐朝资源网

在上面的示例中,自动连接函数使用两个表共有的部门 ID(引用)列来检测部门表和员工表之间创建的引用关系(请参阅主题部分中讨论的示例模型)。如上面的屏幕截图所示,它根据这种关系在报表设计器的“列列表”面板部分中列出了两个表中的列。

在这个数据透视表中,我们使用了 Departments 表的 Department Name 列(在 Rows 区域中)和 Employees 表的 Employee ID(在应用了“Total”函数的 Data 区域中)。生成数据透视表后现有关系数据库如下,自动联接功能会自动联接部门和员工这两个表中的数据,并使用部门 ID 参考列提供报表。

配置连接类型时注意:

Zoho Analytics 默认使用左连接类型来连接表。可能的连接类型是

您可以选择更改连接类型。从连接表创建报表时,您将在报表设计器中看到“查看关系”图标。单击它将打开此报告中使用的查看关系对话框。选择连接类型并单击应用。

使用查找表连接表

(观看在 Zoho Reports 中创建查询表的视频)

在 Zoho Reports 中,您可以通过创建一个查询表来组合来自一个或多个表的数据,该查询表包含使用公共列的 SQL Select 连接查询。例如,您可以创建一个查询来组合员工和部门表,如下所示。

上面的查询示例结合了员工和部门表来将部门名称映射到每个员工。通过连接必要的表创建的查询表,Zoho Reports 允许您创建任何类型的报告以进行分析和可视化。

© 版权声明
THE END
喜欢就支持一下吧
点赞211赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容