Как подключить оператора $ или & $ и в манго couchDb?

У меня есть документ, в котором есть поле "лидер". Leader может быть типом string или array. Например {leader: "id"} or {leader: ["id"]}, Как я могу получить все документы, где leader = id; Если я использую оператор $ all, я ищу в массиве, если использую оператор $ или я ищу в поле (строка). Как я могу их соединить? Я не хочу делать две просьбы. Поле имеет различный тип, потому что была изменена структура. Благодарю.

"selector": {
      "leaderId": {
         "$all": ["id"]
      }
   }

1 ответ

Решение

Попробуй это

db.collection.find({$or : [{"leader" : "id"}, {"leader" : { $all : ["id"] }}]})
Другие вопросы по тегам