Para um tipo ItemTransaction
de mapeamento a seguir, permite consultar documentos com paidDate
um dia de antecedência orderDate
.
Es Type Mapping
{
"ItemTransaction": {
"properties": {
orderDate: {
type: "date",
format: "dateOptionalTime"
},
paidDate: {
type: "date",
format: "dateOptionalTime"
},
customerId: {
type: "string",
index: "not_analyzed",
omit_norms: true,
index_options: "docs"
},
paidAmount: {
type: "long"
}
}
}
}
Inquerir
A consulta usando o filtro de script seria como abaixo,
{
"query": {
"filtered": {
"query": {
"match_all": {}
},
"filter": {
"and": {
"filters": [
{
"script": {
"script": "doc['orderDate'].value > doc['paidDate'].value+86400000"
}
}
]
}
}
}
},
"fields": [
"cutomerId",
"orderDate",
"paidDate",
"paidAmount"
]
}