Search 函数

已完成

Filter 函数擅长精确、固定(通常)的查询。 但是,如果想要寻求一种适应性强的方法,尤其是面向字符串列的方法,则 Search 函数就是您的不二之选。

假设您的应用中包含搜索输入框,而用户可以在其中键入字符串。 使用库中的 Search 函数可以进行动态查询。 它可以检索列中任意位置包含指定字符串的行,为用户提供更灵活、更通用的搜索功能。

例如,要对地址列执行字符串部分匹配。 如果列是名为“Address”的文本列,且应用中有名为“SearchInput”的文本输入控件,可以在库的“Items”属性中使用以下公式。

Search(YourDataSource, SearchInput.Text, "Address")

这将返回其 Address 列包含 Text Input 控件 SearchInput 中输入的值的所有行。 另一个有用行为是,如果 SearchInput 为空(表示用户尚未输入任何数据),便会返回 YourDataSource 中的所有行。 这使得 Search 函数非常强大且易于使用。

Search 函数还可用于跨多个列进行搜索。 若还要使用上面的示例在文本列 City 中进行搜索,请将公式更新为如下所示。

Search(YourDataSource, SearchInput.Text, "Address", "City")

通过添加逗号和另一文本列,现在可以搜索第二列。 可以根据需要额外添加任意数量的文本列。