azure-cognitive-search - 按关键字过滤复杂集合
问题描述
有什么方法可以按关键字过滤复杂的集合吗?我们有一个名为 Phase 的复杂实体,Phase 有一个名为 EntityTitle 的属性,我们要过滤掉所有 title 包含关键字“Completed”的 Phase。我尝试了 contains 和 search.ismatch,但它们都不支持。欣赏任何想法。谢谢。
“过滤器”:“(阶段/任何(阶段:包含(阶段/实体标题,'已完成')))”
"过滤器":"(Phases/any(phase: search.ismatch('Completed', 'phase/EntityTitle')))"
解决方案
实际上,在过滤复杂类型时,lambda 表达式中不支持“search.ismatch”和“contains”,您应该改用“eq”。请参阅https://docs.microsoft.com/en-us/azure/search/search-query-troubleshoot-collection-filters#cheat-sheet-for-collection-filter-rules
您的场景的一个示例是
Phases/any(phase: phase/EntityTitle eq 'Completed')
推荐阅读
- arduino - Adafruit mqtt 库中的 mqtt.ping()
- c++ - 为什么在向量初始化时会出现此错误?
- c++ - 调试时授予 Xcode 麦克风权限
- javascript - 如何防止 onInput 在动态组件初始化期间触发?
- netsuite - 尝试删除或添加新的子列表行时返回错误
- spring-boot - 注销后可以显示一个登录页面
- c# - 无法从 C# .NET Core 应用程序连接 Firebase Cloud Firestore
- javascript - 将类与函数绑定
- python-3.x - 找不到满足要求 tensorflow 的版本(来自版本:无)
- matlab - 检查每个矩阵元素是否不同