Возможно ли выполнить запрос в рамках той же схемы? Например, если у меня есть схема, которая имеет 2 поля даты, и мне нужно найти данные, где одно поле даты больше другого. Это мой пример схемы и кода.Запрос Mongoose в рамках той же схемы
var Schema = mongoose.Schema;
var someSchema = new Schema({
\t someId \t : \t \t { type: String, default: '' ,index:true, unique: true },
\t userName \t \t \t : \t \t { type: String, default: ''},
\t fullName \t \t \t : \t \t { type: String, default: '' },
\t created \t \t \t : \t \t {type: Date, default:''},
\t lastUpdated \t \t \t : \t \t {type: Date, default:''},
\t primaryGroupId \t \t : \t \t {type:String,default:''},
\t nextHearing \t \t \t : \t \t {type: Date, default:''},
\t status \t \t \t : \t {type:String,default:'open'},
\t
});
mongoose.model('Problem', someSchema);
Код ниже мой запрос.
var problemModel = mongoose.model('Problem');
var today = Date.now();
problemModel.find({$and:[{'nextHearing':{$lte: today}},{'nextHearing':{$gte : 'lastUpdated'}}]},function(err, result){
Когда я запускаю программу, я получаю следующую ошибку
{сообщение: 'Cast до настоящего времени не удалось по значению "LastUpdated" на пути "nextHearing"', название: 'CastError', типа: 'дата', значения: 'LastUpdated', пути: 'nextHearing'}
Я не думаю, что это проблема. Я также попытался использовать ваш код. Ошибка с этим '{'nextHearing': {$ gte: 'lastUpdated'}}' – puneeth8994
как 'nextHearing', так и' lastUpdated' являются полями той же схемы, можно ли сравнивать их так, как я это сделал? Если нет, каково возможное решение? – puneeth8994