Я использую Elastica, и мне нужно создать фильтр, который будет получать значения NULL вместе со значениями, которые ниже 100.
На данный момент мой код выглядит так:
$this->filter = $qb->query()->bool();
$this->filter->addShould($qb->query()->range('price', ['lte' => 100]));
Он возвращает данные с ценой ниже 100. Мне также нужно получить данные с нулевыми значениями. До сих пор я пытался:
$this->filter->addMustNot($qb->query()->exists('price')); // returns 0 items
$this->filter->addShould($qb->query()->missing('price')); // doesn't work. Gives undefined query "missing" in Facade.php
Может ли кто-нибудь помочь мне в этом вопросе? Или как устранить проблему с неопределенным запросом «отсутствует» или создать другой фильтр, который будет соответствовать моим потребностям. Благодарю.
php,elasticsearch,elastica,