私は値がいくつかのidである必要がありますかnullである可能性があるクエリを(foselasticaバンドルで)書き込もうとしています。 MySQLではelasticsearch - どこのフィールドがnullです
:WHERE city.id = 1 OR city.id IS NULL
私は、私が使用する必要があることを知っているが存在しない表現が、私のために働いてはいけません。何かアドバイス?
$query = new \Elastica\Query();
if ($phrase) {
$queryString = new \Elastica\Query\QueryString($phrase);
$query->setQuery($queryString);
}
$filter = new \Elastica\Query\BoolQuery();
$city = new \Elastica\Query\Match();
$city->setFieldQuery('city.id', $cityId);
$filter->addShould($city);
$nullCity = new \Elastica\Query\Exists('city.id');
$filter->addMustNot($nullCity);
$query->setPostFilter($filter);
読む[elasticsearchクエリではnullではなく、null値の対処](http://www.inanzzz.com/index.php/post/ioyu/dealing-with-null-and-のようなものを試してみてくださいelastic-archsearch-queriesでのnull値ではない)。 [missing](https://www.elastic.co/guide/en/elasticsearch/guide/current/_dealing_with_null_values.html)を使用する必要があります。 – BentCoder
不足しているクエリがバージョン5から削除されました。「見つからない」例外が登録されていません。私は有用な例を見つけることができません。 –