我有下一个文档结构和插入规则。
文件:{_id : 1, priority : 1.89, etc...}
。
规则:字段优先级应该是唯一的,插入操作必须影响最小数量的元素。
我想在db级别上计算新优先级(将为用户显示的优先级,1,2,3等)。在SQL中我可以执行下一个查询(基于子查询)
Select *, (Select Count(fldName) from tableName where priority <= tn.priority) as priority from tableName as tn
在文档中,我没有找到类似的信息,$ project,$ group,$ let等...
你能否就我的问题向我提出建议!)
P.S 我无法以正常形式存储数据,它们经常会改变并影响许多元素。 示例:
{_id : 1, priority : 1, etc...}
{_id : 2, priority : 2, etc...}
{_id : 3, priority : 3, etc...}
insert in the middle
{_id : 4, priority : 2, etc...}
I should switch another elements
{_id : 1, priority : 1, etc...}
{_id : 4, priority : 2, etc...}
{_id : 2, priority : 3, etc...}
{_id : 3, priority : 4, etc...}