我执行以下查询:
BEGIN
INSERT INTO dd_donor (iddonor)
VALUES (305)
EXCEPTION
WHEN DUP_VAL_ON_INDEX THEN
DBMS_OUTPUT.PUT_LINE('ID already Exists');
END;
这是输出的一部分:
db.preference.find({}, {_id: 1}).sort({$natural: 1}).forEach(function(d) {
print(d._id.getTimestamp())
})
很容易看出日期严重洗牌,而我预计严格按升序排列。
集合没有上限,文档经常被修改。从不在代码中显式生成ObjectIds。收藏不分享。
为什么自然分类以这种方式运作的任何想法?
有人可以在自然排序工作时解释。
答案 0 :(得分:2)
你期待什么?
使用$ natural运算符对a的结果使用自然顺序 排序操作。自然顺序指的是逻辑顺序 数据库内部的文档。
$ natural运算符使用以下语法返回文档 它们存在于磁盘上的顺序:...