2017-07-16 5 views
2

Ich bin derzeit auf der Suche nach Funktionalitäten auf Algolia für einen Standortdienst. Ich habe eine einfache Frage.Mehrere "WIE" -Stringsuche auf Algolia

Ist es möglich, mit mehreren "wie" Zeichenfolge zu suchen, etwas ähnliches wie unten in MySQL?

select * from route 
WHERE pickup LIKE "51%" 
AND dropoff LIKE "80%"; 

Auf Algolia, nehmen wir an, es eine einfache Index besteht aus kleinen Daten:

[{ 
    "pickup" : "51105", 
    "dopoff" : "80637" 
}, 
{ 
    "pickup" : "51105", 
    "dopoff" : "39871" 
}, 
{ 
    "pickup" : "32791", 
    "dopoff" : "40545" 
}] 

I checked habe es gegeben durch genau zwei params abgerufen werden können, wie:

index.search({ 
    facetFilters: 'pickup: 51105, dropoff:80637', 
} 

Auch können wir normale Abfrage mit Tippfehler für eines der Zielparameter verwenden,

index.search({ 
    query: '51', 
    restrictSearchableAttributes: [ 
    'pickup' 
    ], 
} 

aber keiner von ihnen ist mit meiner ursprünglichen Anforderung zufrieden.

Ich habe einen Beitrag gefunden, der mit meiner Frage in der algolia community zusammenhängen könnte, aber er hat mir nicht viel Einblick gegeben. Querying multiple terms in multiple fields

Ich würde denken, dass es eine Lösung gibt, weil ich glaube, dass das ein ziemlich allgemeiner Anwendungsfall sein würde. Es wäre toll, wenn jemand ähnliche Situationen oder Einsichten erfahren hätte. Danke vielmals.

Antwort