Mongodb 在mongo for date字段中使用$gte和$lt运算符的结果错误
我是刚到mongo的,所以我希望我错过了一些简单的东西。我有28个文档,其值为create_timestamp-Mongodb 在mongo for date字段中使用$gte和$lt运算符的结果错误,mongodb,Mongodb,我是刚到mongo的,所以我希望我错过了一些简单的东西。我有28个文档,其值为create_timestamp- { "id" : NumberLong(96), "create_timestamp" : ISODate("2017-09-18T09:00:00Z") } { "id" : NumberLong(97), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") } { "id" : NumberLong(104), "cr
{ "id" : NumberLong(96), "create_timestamp" : ISODate("2017-09-18T09:00:00Z") }
{ "id" : NumberLong(97), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(104), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(106), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(109), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(110), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(120), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(121), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(122), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(124), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(125), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(126), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(128), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(129), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(130), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(132), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(136), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(140), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(145), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
{ "id" : NumberLong(150), "create_timestamp" : ISODate("2017-09-20T15:37:51.575Z") }
我正在查询create_timestamp>=ISODate(“2017-09-19”)和
创建时间戳为什么会这样?为什么查询返回此文档?您正在用第二个值覆盖第一个
create\u timestamp
键值
所以你实际上是在质疑
db.transfer_order.find(
{ $and: [ {"create_timestamp": { $lt: ISODate("2017-09-20")}}]},
{id: 1, create_timestamp: 1})
当查询同一个键的多个值时,可以使用隐式anding
db.transfer_order.find(
{"create_timestamp": { $gte: ISODate("2017-09-19"), $lt: ISODate("2017-09-20")}},
{id: 1, create_timestamp: 1})
使用显式anding
db.transfer_order.find(
{ $and: [ {"create_timestamp": { $gte: ISODate("2017-09-19")}}, {"create_timestamp": { $lt: ISODate("2017-09-20")}}]},
{id: 1, create_timestamp: 1})
更多
db.transfer_order.find(
{ $and: [ {"create_timestamp": { $gte: ISODate("2017-09-19")}}, {"create_timestamp": { $lt: ISODate("2017-09-20")}}]},
{id: 1, create_timestamp: 1})