跳转到内容

将针对外部数据库的 SQL 查询结果导入 PlaidCloud 项目表。查询在远程数据库上运行;只有结果集会被带入 PlaidCloud。

与导入外部数据库表步骤的区别在于,SQL 由您自己编写——适用于希望在数据落入 PlaidCloud 之前由源数据库执行的复杂联接、筛选或聚合。

导入 SQL 表


要建立数据库连接,请参阅 PlaidCloud 数据连接

目标表

导入的目标只能选择表,因为视图不包含底层数据。

动态选项

动态选项允许使用文本(包括变量)指定表。在由变量驱动的工作流中,如果表和视图的引用需要随所指定的变量而变化,此选项会很有用。

以下示例使用 current_month 变量动态指向目标表:

legal_entity/inputs/{current_month}/ledger_values

静态选项

如果希望使用特定表作为导入的目标,请不要勾选Dynamic复选框,直接选择目标表。

如果目标表不存在,请选择新建表按钮,在所需位置创建该表。

任何表选择旁都可使用表资源管理器。单击表选择右侧的表资源管理器按钮,即可打开表资源管理器窗口。

在此部分编写 SQL 查询,以返回所需的数据。

SQL 导入可以选择在加载时尝试推测数据类型,或将所有列设置为文本类型。如果数据干净,动态设置数据类型可能更快,但在某些情况下会引发问题。

例如,如果大部分数据看起来是数值,但同时也有一些文本,它可能会尝试将其设置为数值,从而因数据类型不匹配而导致加载问题。又如,如果存在 16 位的数值产品代码,也可能出问题:它会去掉前导零,结果得到的是一个数字,而不是 16 位的代码。

不过,将数据全部设置为文本时,需要后续的提取步骤,将不应为文本的数据类型转换为相应的类型,例如日期或数值。


现象 可能原因
步骤耗时明显比平时长——最多多出约半小时——而您的查询、连接或数据量并无其他变化 运行导入的后台工作进程在中途被中断(平台侧的重启或驱逐,而不是您工作流中的问题),平台已为您重试该表的导入。重试只会在检测到中断之后才开始,这就是多出这段时间的原因。
延迟之后步骤仍然成功完成 重试会完整替换表的内容,因此结果与一次干净的运行相同——无需进一步检查或重做。
步骤失败,提示 “has already been attempted and cannot be safely re-run” 对于 Import SQL 步骤,不会再出现这种拒绝——中途中断会被重试。不过在还原项目归档或加载维度时,按设计仍会看到该提示,因为重新运行会产生重复内容,而不是替换任何内容。如果在 Import SQL 步骤本身看到该提示,请提交支持工单。