猫鼬模式包括这样的:的MongoDB:按日期将NULL字段排序为早日
{
dueDate: { type: Date, required: false }
}
我的目标是获取通过的dueDate分类与顶部的最快日期文档,然后剩下的没有的dueDate 。我的问题是不需要截止日期,因此没有dueDate的文档会在有效日期的文档上排序。
这是我如何对它进行排序(node.js的& mongoose.js):
query.sort({ dueDate: 'asc' });
我主要是寻找一个内置的方式做到这一点;我已经通过组合查询实施了黑客行为。
http://en.wikipedia.org/wiki/Lexicographical_order这样做,如果你想这些值出现在底部,你将需要创建日期的“最大”值和初始化您的文件该最大值作为其默认值。 – Sammaye
不幸的是,还有其他的东西取决于该字段为空。我可能会考虑重新设计,所以它不会。感谢您的意见。 –
有人想过要改变这种方式,只有字母顺序才能实现这个功能,事实上JIRA门票有些地方可能会吸引我搜索,但是这是关于从SQL迁移到MongoDB的那些“难题”之一: ( – Sammaye