0

这是代码:

start = 0; end = 24
var updateQuery = schema.find({ account: accountID });
updateQuery.where( 'hour' ).gt( start ).lt( end );
updateQuery.exec( ...

hour如果是一个数字,这很好用。实际上,它是一个数组,其中包含一个值和一个 updatedBy 键的对象: [{ value: 23, updatedBy: 'o45h43o8' }, ...]

现在,我想结合 where-query$elemMatch来找出 ifhour[0].value是 between startand end。这是可行的吗?

更新:澄清了我的问题。

4

1 回答 1

1

你不需要使用$elemMatch它,你可以使用这样的点符号来做到这一点:

updateQuery.where( 'hour.0.value' ).gt( start ).lt( end );
于 2013-02-16T14:29:42.267 回答