Так что моя коллекция что-то вроде:Найти значение в массиве
[
{"name": "one", "jobs": ["1","2","3","4","5"]},
{"name": "two", "jobs": ["6","7","8","9","10"]},
{"name": "three", "jobs": ["11","12","13","14","15"]},
]
И я хочу, чтобы создать запрос, чтобы найти имя на основе значения из jobs
. Поэтому, если jobs=2
, имя должно быть one
; если jobs=9
, имя должно быть two
; если jobs=13
, имя должно быть three
. Что я положил в db.collection.find({ ?? })
Спасибо.
Это не работает. Имя не возвращается. И что мне делать, если я тоже хочу вернуть номер задания? Благодарю. – Somename
Вы уверены, что используете правильный код? {name: 1} означает поместить имя. Если вы хотите вернуть имя и все задания, вы можете просто выполнить запрос без второй части, например 'db.collection.find ({jobs: {$ in: [" 1 "," 2 "]}})' или добавьте задания к проекции 'db.collection.find ({...}, {name: 1, jobs: 1})' –
Спасибо. Я делал тип. Благодарю. Теперь я могу получить все значения. – Somename