我有一个包含字段的文档:
"provider": "AppStore",
"device_model": "iPad3,6[graphicsDeviceName: PowerVR SGX 554]",
"days_in_game": 34,
我需要在iPad
中使用device_model
字符串获取所有文档!
有可能吗?
答案 0 :(得分:3)
Elasticsearch中有两种类型的搜索查询,即。术语查询和匹配查询。匹配首先分析查询字符串,然后在查询中查找包含单词的文档,并根据匹配的程度返回结果。 术语查询的作用基本上是是或否查询,并且仅返回具有完全匹配的文档。 我认为对于您的情况,术语查询更适合。并且由于字段不包含确切的单词iPad,但是像iPad3这样的东西你应该使用前缀,通配符或可能的regexp查询,具体取决于你的文档实际包含的内容(看看this)
您可以使用以下查询:
{
"query": {
"prefix": {
"device_model": "iPad"
}
}