У меня есть база данных в Mongodb, заполненная профилями с разными навыками.Поиск в Mongoose с определенными параметрами
Вот пример одного профиля.
{_id: 570b8b5afdcaf27c24a0a837,
identifier: 'Mr X',
url: 'https://MRX.com',
email: '[email protected]'
skills:
[ { _id: 570b8b5afdcaf27c24a0a858, title: 'Java', number: '74' },
{ _id: 570b8b5afdcaf27c24a0a857, title: 'Linux', number: '48' },
{ _id: 570b8b5afdcaf27c24a0a856, title: 'C++', number: '43' },
{ _id: 570b8b5afdcaf27c24a0a855, title: 'SQL', number: '34' },
{ _id: 570b8b5afdcaf27c24a0a854, title: 'XML', number: '28' },
{ _id: 570b8b5afdcaf27c24a0a853, title: 'MySQL', number: '23' },
{ _id: 570b8b5afdcaf27c24a0a852, title: 'C', number: '22' },
{ _id: 570b8b5afdcaf27c24a0a851,
title: 'Java Enterprise Edition',
number: '18' }]
}
Мой вопрос: есть ли запрос в мангусты, где я могу найти профиль, который имеет Linux в своих навыках, но и количество этого Linux умение больше, чем 40?
Я пытался что-то вроде этого в опции ознакомительной:
var x = {
'skills.title': 'Linux',
'skills.number': {
$gt: 40
},
}
, но он не работает, программа находит свое мастерство Linux, но число 40 не связан с Linux.
Есть ли запрос для решения моей проблемы?
Это похоже на работу, когда я положил число равным 40, но когда я хочу, чтобы это было больше, чем 40, я получаю все профили равно или больше или меньше 40. Вы случайно не знаете, почему? –
Убедитесь, что ваш 'number' является числом, а не строкой (без кавычек) – Komo