教程 - 创建集合表达式 | Qlik Cloud帮助
跳到主要内容 跳到补充内容

教程 - 创建集合表达式

您可以在 Qlik Sense 中构建集合表达式以支持数据分析。在此上下文中,该分析通常被称为集合分析。集合分析提供了一种定义范围的方法,该范围不同于应用程序中当前选择所定义的记录集。

您将学到什么

本教程提供了使用集合修饰符、标识符和运算符构建集合表达式的数据和图表表达式。

谁应该完成本教程

本教程面向熟悉脚本编辑器和图表表达式的应用程序开发人员。

开始前需要做什么

如果您有基于用户的订阅,则需要 Professional 用户授权。要了解您的用户类型,请联系您的租户管理员。有关更多信息,请参阅 管理用户权限

进一步阅读和资源

  • 帮助中的 集合分析 主题提供了集合分析的概览、集合表达式元素的详细描述以及示例。

  • 当您想了解更多信息时,Qlik 提供了各种各样的资源。
  • 培训(包括免费在线课程)可在 Qlik Learning 上获取。
  • 讨论论坛、博客等可以在 Qlik Community 中找到。

视频

以下视频是对本教程的补充。

第一个视频展示了与本教程中描述的类似的基本集合表达式。第二个视频演示了更复杂的集合表达式。

集合表达式中的元素

集合表达式包含在聚合函数中,例如 Sum()Max()Min()Avg()Count()。集合表达式由称为元素的构建块构成。这些元素是集合修饰符、标识符和运算符。

集合表达式中的元素

集合表达式中的元素。

例如,上面的集合表达式是基于聚合 Sum(Sales) 构建的。集合表达式包含在外部大括号中:{ }

表达式中的第一个操作数是:$<Year={2021}>

此操作数返回当前选择的 2021 年销售额。修饰符 <Year={2021}> 包含对年份 2021 的选择。$ 集合标识符表示集合表达式基于当前选择。

表达式中的第二个操作数是:1<Country={'Sweden'}>

此操作数返回 SwedenSales。修饰符 <Country={'Sweden'}> 包含对国家/地区 Sweden 的选择。1 集合标识符表示将忽略在应用程序中进行的选择

最后,+ 集合运算符表示该表达式返回一个集合,该集合由属于这两个集合操作数中任意一个的记录组成。

有关更多信息,请参阅:

创建集合表达式教程

完成以下过程以创建本教程中显示的集合表达式。

创建新应用程序并加载数据

  1. 创建新应用程序。
  2. 单击脚本编辑器。或者,打开应用程序导航菜单并选择数据加载编辑器
  3. 数据加载编辑器中创建一个新部分。
  4. 复制以下数据并将其粘贴到新部分中:集合表达式教程数据
  5. 单击加载数据。数据将作为内联加载进行加载。

有关使用内联加载的更多信息,请参阅 使用内联加载来加载数据

使用修饰符创建集合表达式

集合修饰符由一个或多个字段名称组成,每个名称后跟应在该字段上进行的选择。修饰符由尖括号括起来。例如,在此集合表达式中:

Sum ( {<Year = {2015}>} Sales )

修饰符为:

<Year = {2015}>

此修饰符指定将选择 2015 年的数据。包含修饰符的大括号表示集合表达式。

  1. 工作表中,从导航栏打开资产面板,然后单击图表

    使用集合修饰符的 KPI。
  2. 可视化下,将 KPI 拖到工作表上,然后单击添加度量

    使用集合修饰符的 KPI。
  3. 单击 Sales,然后选择 Sum(Sales) 作为聚合。

    使用集合修饰符的 KPI。

    KPI 显示所有年份的销售额总和。

    使用集合修饰符的 KPI。
  4. 复制并粘贴 KPI 以创建新的 KPI

  5. 单击新的 KPI,单击度量下的 Sales,然后单击打开表达式编辑器

    使用集合修饰符的 KPI。

    表达式编辑器将打开并显示聚合 Sum(Sales)

    使用集合修饰符的 KPI。
  6. 在表达式编辑器中,创建一个表达式以仅对 2015 年的 Sales 求和:

    1. 添加大括号以指示集合表达式:Sum({}Sales)
    2. 添加尖括号以指示集合修饰符:Sum({<>}Sales)

    3. 在尖括号中,添加要选择的字段,在本例中字段为 Year,后跟等号。接下来,将 2015 括在另一组大括号中。生成的集合修饰符为:{<Year={2015}>}

      整个表达式为:

      Sum({<Year={2015}>}Sales)
      使用集合修饰符的 KPI。
    4. 单击应用以保存表达式并关闭表达式编辑器。2015 年的 Sales 总和显示在 KPI 中。

      使用集合修饰符的 KPI。
  7. 使用以下表达式再创建两个 KPI:

    Sum({<Year={2015,2016}>}Sales)

    上面的修饰符是 <Year={2015,2016}>。该表达式将返回 2015 年和 2016 年的 Sales 总和。

    Sum({<Year={2015},Country={'Germany'}>} Sales)

    上面的修饰符是 <Year={2015}, Country={'Germany'}>。该表达式将返回 2015 年的 Sales 总和,其中 2015 年与 Germany 相交。

    使用集合修饰符的 KPI

    使用集合修饰符的 KPI。

添加集合标识符

上面的集合表达式将使用当前选择作为基础,因为没有使用标识符。接下来,添加标识符以指定进行选择时的行为。

在您的工作表上,构建或复制以下集合表达式:

Sum({$<Year={"2015"}>}Sales)

$ 标识符将使集合表达式基于数据中当前的所选内容。这也是未使用标识符时的默认行为。

Sum({1<Year={"2015"}>}Sales)

1 标识符将导致 2015 年的 Sum(Sales) 聚合忽略当前选择。当用户进行其他选择时,聚合的值不会改变。例如,当在下面选择 Germany 时,2015 年聚合总和的值不会改变。

使用集合修饰符和标识符的 KPI

使用集合修饰符和标识符的 KPI。

添加运算符

集合运算符用于包含、排除或相交数据集。所有运算符都使用集合作为操作数,并返回一个集合作为结果。

您可以在两种不同的情况下使用集合运算符:

  • 对集合标识符执行集合操作,表示数据中的记录集。

  • 对元素集、字段值或在集合修饰符内部执行集合操作。

在您的工作表上,构建或复制以下集合表达式:

Sum({$<Year={2015}>+1<Country={'Germany'}>}Sales)

加号 (+) 运算符生成 2015Germany 数据集的并集。如上文关于集合标识符的解释,美元符号 ($) 标识符意味着将对第一个操作数使用当前选择,即 <Year={2015}> 将被遵守。1 标识符意味着第二个操作数 <Country={'Germany'}> 将忽略选择。

使用加号 (+) 运算符的 KPI

使用集合修饰符和标识符的 KPI。

或者,使用减号 (-) 返回一个数据集,该数据集由属于 2015 年但不属于 Germany 的记录组成。或者,使用星号 (*) 返回由属于这两个集合的记录组成的集合。

Sum({$<Year={2015}>-1<Country={'Germany'}>}Sales)

Sum({$<Year={2015}>*1<Country={'Germany'}>}Sales)

使用运算符的 KPI

使用集合修饰符和标识符的 KPI。

集合表达式教程数据

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们!