Поиск всех записей, содержащих любое подполе в mongodb - PullRequest
0 голосов
/ 06 сентября 2018

У меня есть вопрос, похожий на Поиск всех записей, содержащих данное подполе в mongodb , но там, где вы не знаете имя подполя.

С учетом следующих документов:

// Document 1
{
   age: 10,
   name: "andrew",
   meta: {
      meta1: true
   }
}

и

// Document 2
{
   age: 10,
   name: "andrew",
   meta:{
   }
}

Я хочу запрос, который найдет документы, которые имеют значение, определенное для любого свойства в поле meta. В этом случае такой запрос будет соответствовать только Document 1.

Я попробовал следующее:

db.col.find({ meta: { $ne: "" } }) 

Но он соответствовал всем документам, включая те, в которых meta не имел подполей.

Я хочу только документы с чем-то внутри мета.

Я изо всех сил пытался найти и попробовать, но ничего.

Спасибо

1 Ответ

0 голосов
/ 06 сентября 2018

Это просто:

db.col.find({meta: {$ne:{}}})

Вы были очень близки!

...