- 打印
目的
学习如何查询 Tulip 表并建立可在 Tulip 应用程序中访问的聚合
在本文中,您将了解到...
- 表查询的功能
- 如何建立查询和聚合
- 如何在应用程序中使用查询和聚合
表查询和表聚合简介
表查询和汇总使您能够以动态方式与 Tulip 表交互,过滤和汇总数据,以便在应用程序中使用。
在本文中,我们将参考以下有 10 行的订单表:
在右上角,您可以看到 "查询"和 "汇总"按钮**。单击查询**可添加新查询。
下面的示例使用过滤器只返回尚未发货的记录:
聚合是在查询的基础上添加的,和查询一样是在表级别创建的。单击聚合创建新聚合。
下面的示例将汇总表字段 "产品数量":
查询选项
过滤
通过比较特定列或多列与静态值或应用程序输入,筛选记录。
比较选项的示例包括
- 等于/不等于
- 为空/非空
- 包含/不包含
- 始于/不始于
- 以/不以结束
- 包含
- 大于或等于 / 小于或等于
- 在后或在/在前或在
静态值将在建立查询时静态设置,但应用程序输入将在应用程序本身进行配置。应用程序输入可配置为
- 变量
- 静态值
- 应用程序信息
- 郁金香表记录
现在,您可以在表查询中使用创建时间和更新时间字段。
排序
通过配置排序选项,自定义记录的显示方式。示例包括
- A 到 Z / Z 到 A
- 0 到 9 / 9 到 0
限制
查询返回记录的最大数量。
- 默认值:1,000
- 最大值1,000
:::(Warning) (限制时的行为)
如果表中与查询筛选器匹配的记录数(或未配置任何筛选器的总记录数)多于限制值,查询结果中将只包含限制值所指定的记录数。
如果查询包含排序,则会包含根据排序排在前面的记录:
测试
通过设置筛选器、排序和限制选项配置查询后,可点击测试在表上测试查询。这将模拟查询在应用程序中的返回结果。
聚合
聚合是在查询之上运行的汇总值,可以为特定列计算以下值之一:
- 平均值
- 计数
- 最大值
- 最小值
- 模式
- 总和
- 唯一值
:::(Warning) (限制)聚合是在为其配置的表查询所返回的记录上执行的。因此,为聚合的父表查询设置的限制也适用于聚合。
这意味着聚合最多只能考虑 1,000 条记录。因此,如果表中给定筛选器的记录多于限制,而用户又不知道查询限制,那么聚合可能会显示意想不到的结果。
如果需要在应用程序中聚合超过 1000 条记录,可以使用 Tulip API 的 runAggregation 端点,该端点通过连接器函数支持多达 100000 条记录。如果只需要可视化更多记录的聚合,可以使用 Tulip Analytics 建立单值分析,这样就可以聚合表中的所有记录:
在应用程序中使用查询和聚合
在应用程序中添加查询
要在应用程序中添加查询,首先要在应用程序中添加表,方法是点击记录选项卡,然后**+添加表。然后单击查询**。
在出现的模态中,为查询命名,并配置与筛选器关联的应用程序输入(如果适用)。在本例中,请查看查询 "未发货产品":
在应用程序中配置好查询后,嵌入一个交互式表格,并选择查询的数据源。
嵌入的表格将显示查询结果。在此示例中,有 3 条记录符合筛选条件,即**"已发货 "等于 "否":**
在应用程序中添加聚合
与将查询添加到应用程序的方法类似,单击**+Add Aggregation 添加聚合,并指定聚合名称**。
在本例中,聚合 "订购产品总数量"将在查询中运行,该查询只返回尚未发货的记录。因此,聚合名称为 "待发货产品数量":
要在应用程序中嵌入聚合,请在应用程序中放入一个变量,然后选择数据源-郁金香表聚合。接下来,选择将聚合添加到应用程序时配置的聚合名称。
在本例中,产品数量的聚合总和是在返回需要发货记录的查询之上运行的。返回的总记录数为 17:
在应用程序逻辑中使用聚合
有了聚合,你就可以围绕聚合的值建立应用程序逻辑。请看下面的示例:
请注意,单个数字郁金香分析目前无法在应用程序中访问,也无法直接利用应用程序逻辑。通过在查询中运行聚合,您就可以锁定该值,从而围绕它建立应用程序逻辑。