假设我有以下数据:
Time | Submitted |
---|---|
1 | True |
2 | True |
3 | True |
4 | False |
5 | False |
6 | False |
我的目标是要么提交最老的未提交的,要么提交最新的.这是为了加载用户时间表,所以如果他们有一个旧的未提交的时间表,我想默认加载它.如果没有,我想向他们展示他们最新的时间表.
在查询之后,我希望数据按以下顺序返回:
Time | Submitted |
---|---|
4 | False |
5 | False |
6 | False |
3 | True |
2 | True |
1 | True |
请注意,前3条记录为false,因此它们按升序时间排序,而后3条记录为true,因此它们按降序时间排序.
以下是MongoPlace的数据样本:
https://mongoplayground.net/p/yEtgMOfZ_ik
我猜这可以通过投射一些值来作为排序依据来完成,但我无法理解这需要什么.