Tengo una consulta que tiene este aspecto:de consulta DSL - Falta de comprensión de filtros
{
"query": {
"constant_score":
"filter": {
"missing": {
"field": "parent_id"
}
}
}
},
"size": limit,
"from": offset
}
Mi tipo tiene un campo y una parent_id
wall_id
. ¿Cómo puedo modificar esta consulta para poder obtener todos los tipos que no tienen un parent_id
y no tienen un wall_id
? Parece que no puedo descifrarlo de los documentos. Gracias por cualquier ayuda ofrecida!
ACTUALIZACIÓN
Tengo la siguiente consulta que funciona, pero no me gusta el cajón de sastre query
en el título. ¿Hay una manera de hacer esto sin tener que añadir un "cajón de sastre
{
"query":{
"filtered":{
"query":{
"field":{ "title":"*" }
},
"filter":{
"and":{
"filters":[
{
"missing":{ "field":"parent_id" }
},
{
"missing":{ "field":"wall_id" }
}
]
}
}
}
}, "size":10, "from":0
}
Wow, eso es Tengo que agregar llaves alrededor de la propiedad "filtro", pero funciona. ¡Gracias! Por cierto, este formato es tan quisquilloso, ¿hay alguna fuente de buena documentación aparte de los documentos de elasticsearch.org? – swatkins
Vaya, gracias No hay otro recurso que conozca, pero es posible que desee consultar las diapositivas para una presentación que di: http://www.elasticsearch.org/tutorials/2011/08/28/ query-dsl-explained.html Además, no sé qué cliente está usando para hablar con ES, pero si está familiarizado con Perl, eche un vistazo al SearchBuilder, que es un Perl más compacto más Perl 'ish sintaxis que se traduce en la consulta ES estándar dsl: https://metacpan.org/module/ElasticSearch::SearchBuilder – DrTech
Estoy usando node.js y el módulo elasticsearchclient. Esa es una gran ayuda. ¡Gracias! – swatkins