【发布时间】:2020-07-31 21:54:38
【问题描述】:
假设我有一个集合架构 version,如下所示:
{
version: String, // 1.0.1
createdAt: Date,
}
如何编写一个查询,返回某个版本之后创建的所有版本,并提供该版本字符串?
我不想使用 Mongo 字符串比较,因为 '10.0.1' < '9.2.1' 的计算结果为 true
我用的是Mongoose,如果是mongoose语法就更好了。
【问题讨论】:
-
你的版本是线性递增的吗?如果是这样,下面的答案应该有效。否则需要使用两个请求,使用 findOne() 通过版本字符串获取文档。然后使用带有 $gt 运算符的文档 createdAt 字段来查询之后创建的所有文档。