#javascript #node.js #database #mongodb #find
#javascript #node.js #База данных #mongodb #Найти
Вопрос:
Пытаюсь выполнить поиск в моей базе данных MongoDB, используя имена переменных, не указывая точный поиск. Возможно ли это сделать? Независимо от того, как я пытаюсь отформатировать переменную, я не могу добиться успешного поиска. Я пытаюсь сделать что-то вроде нижней строки ниже
let url3 = 'http://cs544.io/11jgry2';
const ret = await dbTable.find({"shortUrl" : "http://cs544.io/11jgry2"}); //Works
const ret = await dbTable.find({"shortUrl" : url3}); //Doesn't work
Ответ №1:
Используйте $eq, он задает условие равенства. Оператор $eq сопоставляет документы, в которых значение поля равно указанному значению.
Проверьте это this для дальнейшего объяснения и примеров
Ответ №2:
Теоретически, это должно сработать,
Но я предлагаю вместо этого взглянуть на использование $ eq.
Вот пример
const ret = await dbTable.find( { shortUrl: { $eq: url3 } } );