Ich habe Datumsfeld in meinem Mapping und ich möchte auf meinem Feld Fuzzy-Suche tun Unten ist mein CodeFuzziness in Datumsart eingereicht
GET _search
{
"query": {
"fuzzy": {
"death_date": {
"value": "3548"
}
}
}
}
Aktuelle Ergebnisdaten nicht zurück basiert laut Erwartung. Obwohl ich 3548 Wert haben, ist es Partitur weniger als 3549 Wert ist, der auf der Oberseite des Ergebnisses erscheint ich meine Abfrage-Parameter umfassen Bereich haben sich wie
vorgeschlagenGET _search
{
"query" : {
"bool": {
"must":
{
"match": {
"marriages.marriage_year": "1630"
}
},
"should":
{
"match": {
"first_name":
{ "query" : "mary",
"fuzziness":"2"
}
}
},
"must":
{
"range" : {
"marriages.marriage_year": {
"gt" : "1620",
"lte" : "1740"
}
}
}
}
}
}
Es wird Daten mit marriages.marriage_year Rückkehr = " 1630 "mit Mary als erstem Namen als höchste Punktzahl. Ich möchte auch Ehen.marriage_year zwischen 1620 - 1740, die in den Ergebnissen nicht gezeigt werden. Es zeigt Daten nur für marraige_year an. 1630
Unschärfe macht keinen Sinn in einem 'date' Feld. Was Sie wahrscheinlich suchen, ist eine 'Bereich' Abfrage: https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-range-query.html#ranges-on-dates –