Smart Table

Smart Table 是一个可保存、可复用的联接视图:一张基表外加通往其他表的关系,在可视化画布上绘制,并像普通表那样浏览。它是 Workbench 用 SQL 驱动的同一个联接引擎的可视化通道

从侧边栏的右键菜单(New Smart Table)、⌘⌥T 快捷键或 File → New Smart Table 创建一个。Smart Table 始终是只读的。

处于 Configure 模式的 Smart Table:ER 画布上的表节点,它们之间有一条关系连线,下方是实时预览。
处于 Configure 模式的 Smart Table:ER 画布上的表节点,它们之间有一条关系连线,下方是实时预览。

两种模式

一个 Smart Table 会以以下两种模式之一打开:

  • Configure —— 编辑界面。一个由表节点构成的 ER 风格画布,你在其中添加表并绘制关系。底部有一个实时的 10 行预览,会随你编辑而更新。
  • Data —— 结果。联接后的行在普通表标签页所用的同一个虚拟化网格中渲染,配有相同的筛选、分页和 Quick View

一个空的 Smart Table 以 Configure 打开;一个已填充的则以 Data 打开。从标题栏按钮在两者之间切换。编辑会自动保存 —— 没有保存按钮。

构建一个联接

在 Configure 模式下:

  1. 向画布添加表。 第一张会成为基表(带星标);你可以从某个节点的右键菜单更改哪一张是基表。
  2. 绘制一个关系,方法是从一张表上的某个属性拖动到另一张表上的某个键 —— 或者使用添加关系以获得一个引导式表单。
  3. 联接目标必须是分区键或 GSI 分区键(与 Workbench 强制执行的访问模式规则相同)。DynoTable 只允许你把连接放到一个有效的目标上。
  4. 从连线弹出层设置每个关系的联接类型 —— LEFT(保留没有匹配的基表行)或 INNER(丢弃它们)。

浏览数据

Data 模式会把联接展开成扁平的行:每个匹配的元组一行,关联表的属性显示为 <table>.<attr> 列。筛选应用于基表 —— 若要对某个联接属性做谓词,或要做聚合,请改用 Workbench

重命名列

右键点击任意列表头即可为此标签页重命名它 —— 当联接后的列发生冲突,或原始属性名晦涩难懂时很方便。你也可以从某个关系的连线弹出层重命名它的整个前缀。重命名会一路流入导出

Smart Table 与 Workbench

同一个引擎,两种编写风格:

  • Smart Table —— 绘制联接、浏览行。无需 SQL。
  • Workbench —— 输入 SQL;在此之上添加聚合、GROUP BY 和对联接属性的筛选。

挑选适合任务的那一个;两者都不能写入你的表。

更新于