猫鼬:如何结合$ elemMatch?

时间:2013-02-16 11:31:10

标签: node.js mongodb mongoose

以下是代码:

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结合起来,找出hour[0].value介于startend之间的情况。这可行吗?

更新:澄清了我的问题。

1 个答案:

答案 0 :(得分:1)

您不需要使用$elemMatch,您可以使用点符号来执行此操作:

updateQuery.where( 'hour.0.value' ).gt( start ).lt( end );