Эластичный поиск Поиск нескольких регулярных выражений в пределах одного столбца в одном запросе? - PullRequest
0 голосов
/ 04 июля 2018

Используя Java-клиент для упругого поиска, я могу использовать только один поиск по регулярному выражению. Сейчас я использую вот так.

searchSourceBuilder.query(QueryBuilders.regexpQuery("name", "AB.*"));

Но мне нужен упругий поиск, эквивалентный

SELECT NAME FROM USERS WHERE NAME LIKE 'AB%' OR 'SID%'

Я использую RestHighLevelClient. Есть ли способ сделать несколько регулярных выражений в одном столбце?

Заранее спасибо.

1 Ответ

0 голосов
/ 04 июля 2018

Вам нужно добавить оба запроса регулярного выражения в bool/should:

QueryBuilder first = QueryBuilders.regexpQuery("name", "AB.*");
QueryBuilder second = QueryBuilders.regexpQuery("name", "SID.*");
QueryBuilder boolQuery = QueryBuilders.boolQuery()
   .should(first)
   .should(second);
searchSourceBuilder.query(boolQuery);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...