Вопрос по field, lucene – Как запросить lucene для пустых полей?

17

Я хочу, чтобы во 2-й части моего запроса был список результатов, в то время как данные не нулевые. Я нахожу, как это сделать в Solr, но не в Lucene. У кого-нибудь есть идея Спасибо

Строка:

(field_one: поиск AND field_two: 3000) ИЛИ (field_three: поиск AND field_two: 3000 ANDNOT NULL field_one )

Запрос:

+ field_one: поиск + field_two: 3000 + field_three: search + field_two: 3000-field_one:null

Возможный дубликатLucene not null query? dcorking

Ваш Ответ

3   ответа
0

-_exists_:field_one у меня работает в ElasticSearch 6.0

ссылка:https://www.elastic.co/guide/en/elasticsearch/reference/6.0/query-dsl-query-string-query.html#_field_names

5
*:* -MY_FIELD_NAME:[* TO "zzzzzzzzzz"]

z & quot; символы, чтобы обеспечить включение любого значения поля.

К сожалению, & quot; zzzzzzzzzzz & quot; не учитывает не буквенно-цифровые символы.
18
*:*  -MY_FIELD_NAME:[* TO *] 

хорошо, чтобы вышесказанное работало, поле должно существовать (оно различает только NULL и Non NULL (см. пустую строку)
Я пробую ваше предложение, но это не работает. Учитывая, что атрибут, который мне нужен, не является ли он нулевым, не индексируется, когда не было предоставлено никакого значения, запрос, я полагаю, не справляется с этим. Jonathan Ilambo

Похожие вопросы