我有一个弹性搜索json响应,如:
"source": {
lastupdate_es: "2016-01-11T11:22:49.800Z",
prod_id: [
"prod12345"
],
price: [
{
price_list: "ADomain",
list_price: 31.67
},
{
price_list: "ADomain",
list_price: 760
},
{
price_list: "ADomain",
list_price: 31.67
},
{
price_list: "BDomain",
list_price: 760
},
{
price_list: "BDomain",
list_price: 29.66
},
{
price_list: "CDomain",
list_price: 710
},
],
sku_id: "sku123445"
}
我需要一个查询来过滤记录,SQL查询类似于" select * from table from prop_id =' product id'和price_list一样,'%Domain'。我们如何创建弹性查询来实现这一目标?
答案 0 :(得分:0)
如果您喜欢SQL语法,that可能是您的解决方案。
使用类似的东西
POST /index_name/table/_search
{
"query": {
"bool": {
"must": [
{
"term": {
"prod_id": "prod12345"
},
"regexp": {
"price_list": ".Domain"
}
}
]
}
}
}
直接在elasticsearch中执行查询。