跳到主要内容

集合修饰符和高级搜索

可以通过使用集合修饰符进行搜索来创建元素集合。

例如:

  • <Country = {"C*"}>
  • <Year = {">2015"}>
  • <Ingredient = {"*garlic*"}>

搜索应始终用双引号、方括号或严肃的重音符号括起来。您可以使用混合了文字字符串(单引号)和搜索(双引号)的列表。例如:

<Product = {'Nut', "*Bolt", Washer}>

文本搜索

通配符和其他符号可用于文本搜索:

  • 星号 (*) 表示任意数量的字符。

  • 问号 (?) 表示单个字符。

  • 扬抑重音 (^) 将标记单词的开头。

例如:

  • <Country = {"C*", "*land"}>

    匹配以 C 开头或以 land 技术的所有国家。

  • <Country = {"*^z*"}>

    这将匹配有以 z 开头的单次的所有国家,例如 New Zealand

数字搜索

您可以使用以下关系运算符进行数字搜索:>>=<<=

数值搜索始终以这些运算符之一开始。例如:

  • <Year = {">2015"}>

    匹配 2016 年及以后年份。

  • <Date = {">=1/1/2015<1/1/2016"}>

    匹配 2015 年期间的所有日期。请注意用于描述两个日期之间的时间范围的语法。日期格式需要与相关字段的日期格式匹配。

表达式搜索

可以使用表达式搜索进行更高级的搜索。然后为搜索字段中的每个字段值计算聚合。将选择搜索表达式返回 true 的所有值。

表达式搜索始终以等号开头: =

例如:

<Customer = {"=Sum(Sales)>1000"}>

这将返回销售额大于1000的所有客户。Sum(Sales) 根据当前选择计算。这意味着,如果您在另一个字段(如 Product 字段)中进行了选择,则您将仅获得满足所选产品销售条件的客户。

如果希望条件独立于选择,则需要在搜索字符串中使用集合分析。例如:

<Customer = {"=Sum({1} Sales)>1000"}>

等号后面的表达式将被解释为布尔值。这意味着,如果它的计算结果为其他值,任何非零数字都将被解释为 true,而零和字符串则被解释为 false。

引号

当搜索字符串包含空格或特殊字符时,请使用引号。单引号将与单个字段值进行文本、区分大小写的匹配。双引号表示不区分大小写的搜索可能匹配多个字段值。

例如:

  • <Country = {'New Zealand'}>

    仅匹配 New Zealand

  • <Country = {"New Zealand"}>

    匹配 New ZealandNEW ZEALAND 以及 new zealand

双引号可以用方括号或重音符代替。

有关更多信息,请参阅在选择项或可视化中搜索

备注: 在之前的 Qlik Sense 版本中,在单引号和双引号之间不存在区别,并且将所有引用的字符串作为搜索处理。要保持向后兼容性,使用较旧版本 Qlik Sense 创建的应用程序将继续和在之前版本中那样工作。使用 Qlik Sense November 2017 或更高版本创建的应用程序将存在两种类型引号之间的差异。

示例:带有搜索的集合修饰符的图表表达式