Table JSON Parse 步骤
读取包含 JSON 文本的列,并将其展开为输出行,文档中找到的每个值对应一行。它与 Table XML Parse 相对应,也是 Alteryx JSON Parse 工具在 PlaidCloud 中的等效步骤。
当上游系统在单个列中提供 JSON 负载,而您需要将其内容作为普通的行和列时,请使用它。
user.name),数组会被展开,因此下游步骤只需处理普通的行和列。JSON 字段
Section titled “JSON 字段”包含要解析的 JSON 文本的列。
- Name and value only(默认):每个输出行包含
JSON_Name和JSON_ValueString。最简单,当下游将所有值都视为文本时已足够。 - Typed values:关闭单字段选项,即可同时添加特定类型的值列,使数字和布尔值以数字和布尔值的形式到达,而不是字符串。
默认关闭。启用后,会在每个值行上重复输入记录的其他列,使解析出的值与其来源记录保持联接,无需单独的联接步骤。
输出(json_layout)用于选择不同的输出形态。以下每种布局都保持每个输入行对应一个输出行:
- 宽表:每个键路径一列(
wide):输入列(除非包含 JSON 字段,否则不含该字段),加上每个点分隔键路径一个文本列;文档中缺少该路径时为 NULL。 - 每个 JSONPath 查询一列(
paths):输入列加上每个 JSONPath 查询一列。在 JSONPath 查询(json_paths)中列出这些查询,每个查询包含 列、JSONPath、类型 和 多个匹配项 设置(target、path、dtype、multi):path是 JSONPath(名称、索引、通配符、深度扫描、切片、联合和筛选器),dtype为text、integer、bigint、double、boolean或json,multi为空表示取第一个匹配项(无匹配时为 NULL),list表示将所有匹配项作为列表值,paths表示匹配项的路径。来自表的查询(json_dictionary)可以替代该列表,从表的行中读取查询:{source, path, type, output}指明该表以及其中保存各路径、类型和输出列名称的列。 - KNIME JSON to Table 生成的列(
table):输入列加上 KNIME 的 JSON to Table 节点根据文档生成的列。由 JSON 转表 选项(json_table)设置,首先是 按 JSON 路径命名列(paths)、用于连接路径片段的 路径分隔符(separator,默认为.)、数组(arrays,取值为GenerateCollectionCells、GenerateColumns或KeepAllArrayAsJsonArray)、要展开的级别(levels,0 表示全部),以及 省略已展开的对象(omit_objects,默认为 true),用于省略对象值。
使用 JSONPath 或 JSON to Table 布局时,启用 在输出中省略 JSON 字段(json_remove_source)可从结果中删除 JSON 字段。