тогда почему первый вариант с ААА не подходит, но подходят второй где нет ДДД?
еще раз попробую объяснить
у объекта имеются такой набор
["BBB", "CCC", "DDD"]
нам нужно найти все документыони же фильтры которые попадут в этот набор объекта.
получает что попадают только два из трех
[
{
values: ["BBB", "CCC"],
},
{
values: ["CCC", "DDD"]
}
]
["BBB", "CCC"] и ["CCC", "DDD"] они содержатся в массиве объекта жилья ["BBB", "CCC", "DDD"]
$all будет подходить, если мы ищем все объекты по одному фильтру. а у нас наоборот мы ищем все фильтры по объекту. у объекта может быть больше параметров чем установлено в фильтре. поэтому нам не подходит $all. Объект содержит все параметры, у фильтра только 2 параметра. Но 4All нам не найдет этот документ.