我想找到介于“startdate”和&之间的记录。 “结束日期”。我得到的日期记录如“2013-05-22”,“2013-05-20”,“2013-05-10”,“2013-05-05”等。
我收集的字段如下:
array (
'_id' => new MongoId("518221f16541b9980d000002"),
'userId' => '2d40981c83a37e758ced05dc325e40fa',
'kpiId' => 'f516ed1c59e6b310c47cdfc06abb17aa',
'dateOpt' => 'customize',
'startDate' => '2013-05-02',
'endDate' => '2013-05-22',
'personalTarget' => '',
'assignedTarget' => '100000.00',
'singleTargetAmt' => 6666.6666666667,
'createdOn' => '2013-05-02 13:51:05',
'updatedOn' => '2013-05-02 13:51:05',
'distributionMethod' => 'manual',
)
我的查询是:
array(
"kpiId" => 'f516ed1c59e6b310c47cdfc06abb17aa',
"userId" => '2d40981c83a37e758ced05dc325e40fa',
"startDate" => array
(
'$gte' => '2013-05-03'
),
"endDate" => array
(
'$lte' => '2013-05-03'
)
)
它没有记录。我的查询错了?
答案 0 :(得分:0)
尝试这样的事情
Query query = new Query(Criteria.elemMatch(
Criteria.where("startDate").lte(date)
.and("endDate").gte(date)
);