MongoDB как найти любое значение в случае, если в параметрах ничего не задано?
Доброго времени суток!
Подскажите, как найти любое значение, если в параметрах пусто? При этом структура запроса должна сохраниться.
db.ad.find({"electronics.categoryId" : 1}).count(); //все ок
db.ad.find({"electronics.categoryId" : ????????? }).count(); //показать все, если в параметрах пусто
$category = !empty($cat) ? ['electronics.categoryId' => (int)$cat] : ["electronics.categoryId" => ["\$exists" => true]];
или конкретные выводим категории, или все, но сдается мне это не совсем правильно :)
kejabuvu: тогда не понял вопроса, что значит в параметрах пусто? Надо вернуть все записи где catId=1 или у записи не указана категория? тогда в сторону $or
kejabuvu: как вам надо сделать запрос? я понял все связано с переменной $cat? когда она есть, то надо вернуть записи у которых cat = $cat? А когда нет $cat тогда что надо вернуть? Все записи?или записи у которых не указан cat?