Ich möchte eine Abfrage mit Elasticsearch Java API erstellen, aber ich weiß nicht, wie Sie eine OR-Klausel erstellen? Was ich abfragen möchte, ist;So erstellen Sie eine Suche mit oder Klausel mit Elasticsearch
SELECT *
FROM USERS
WHERE (user.name = "admin") AND (user.message LIKE "test*") AND (user.age = "30" OR user.status = "major")
Ich habe eine Abfrage wie unten erstellt, aber ich weiß nicht, wie eine OR-Klausel wie SQL-Abfrage erstellen;
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.must(QueryBuilders.matchQuery("name", "admin"));
boolQueryBuilder.must(QueryBuilders.matchQuery("message", "test*"));
boolQueryBuilder.must(QueryBuilders.matchQuery("age", "30"));
boolQueryBuilder.must(QueryBuilders.matchQuery("status","major"));
Sorry, mein Fehler ist nicht "mustNot". Übrigens ist meine "Gefällt mir" -Abfrage korrekt? (Ich meine QueryBuilders.matchQuery ("message", "test *")) – hellzone
Sie können in 'match'-Abfragen keine Platzhalter verwenden, stattdessen können Sie stattdessen' queryStringQuery' oder 'wildcardQuery' verwenden – Val