elasticsearch - 具有多个类别的弹性搜索查询
问题描述
所以我试图按流派或类别查询电影。
在我的文档中,每部电影都可以有 1 个或多个类别。
{
title: 'title1',
genre: ['Horror', 'Action', 'Adventure']
},
{
title: 'title2',
genre: ['Action', 'Comedy']
}
等等..我想通过提供多种流派类型来查询它,并希望匹配最好的类型。例如)查询匹配动作、喜剧的电影 -> 匹配在其类型字段中匹配最多类型的电影。它不必是完全匹配的。所以我基本上想找到与我的多种类型输入最匹配的文档。
有人有任何输入吗?该文档可以以不同的方式构建。谢谢你 :)
解决方案
使用术语查询,您可以找到具有多个输入的文档
GET <index_name>/_search
{
"size": 20,
"query": {
"bool": {
"must": [
{
"terms": {
"genre": [
"horror",
"action"
]
}
}
]
}
}
}
推荐阅读
- google-cloud-bigtable - 使用部署管理器部署 Google Cloud Bigtable
- php - 自定义 PHP 表单抛出错误 (Wordpress)
- ios - UIViewController xib 文件包含一个带有自定义单元格的集合视图
- statistics - 如何正确阅读此茎叶图?
- json - 写入或尝试更改为 VS Code 设置时出错
- android-studio - Android Studio:使用 DrawerLayout 时看不到布局预览
- sql - 从搜索特定模式的 <> 标记中提取文本
- powershell - Active Directory Powershell 到固定宽度的 txt 文件
- sml - SML映射过滤器?
- r - showtext/sysfont 包中的 font_add_google 函数不起作用