在 MongoDB 中对同一字段 _id 执行 $gte 和 $lt
Perform $gte and $lt on the same field _id in MongoDB
db.comments.find({"_id" : {"$gte": ObjectId("6225f932a7bce76715a9f3bd"), "$lt":ObjectId("6225f932a7bce76715a9f3bd")}}).sort({"created_datetime":1}).limit(10).pretty()
我正在使用这个查询,它应该给我当前的“6225f932a7bce76715a9f3bd”文档,在此之前插入 4 个文档,在此之后插入 5 个文档。但是目前当我 运行 这个查询时,我得到空结果。我哪里错了??
我别无选择,只能将查询分开以实现我的期望。
query = request.args.to_dict()
find_query = {}
find_query["_id"] = {"$lt": ObjectId(query["comment_id"])}
previous_comments = list(db.comments.find(find_query))
find_query["_id"] = {"$gte": ObjectId(query["comment_id"])}
next_comments = list(db.comments.find(find_query))
previous_comments.extend(next_comments)
return {"comments":previous_comments}
db.comments.find({"_id" : {"$gte": ObjectId("6225f932a7bce76715a9f3bd"), "$lt":ObjectId("6225f932a7bce76715a9f3bd")}}).sort({"created_datetime":1}).limit(10).pretty()
我正在使用这个查询,它应该给我当前的“6225f932a7bce76715a9f3bd”文档,在此之前插入 4 个文档,在此之后插入 5 个文档。但是目前当我 运行 这个查询时,我得到空结果。我哪里错了??
我别无选择,只能将查询分开以实现我的期望。
query = request.args.to_dict()
find_query = {}
find_query["_id"] = {"$lt": ObjectId(query["comment_id"])}
previous_comments = list(db.comments.find(find_query))
find_query["_id"] = {"$gte": ObjectId(query["comment_id"])}
next_comments = list(db.comments.find(find_query))
previous_comments.extend(next_comments)
return {"comments":previous_comments}