mobngoDB:按组设置顺序值

时间:2016-01-29 10:15:01

标签: mongodb

我有一个集合,其文档具有指示其顺序和组属性的索引属性:

{
    "item": "A1",
    "group": "A",
    "index": 1
}
{
    "item": "A2",
    "group": "A",
    "index": 2
}
{
    "item": "B1",
    "group": "B",
    "index": 3
}
{
    "item": "B2",
    "group": "B",
    "index": 4
}
{
    "item": "C1",
    "group": "C",
    "index": 5
} 
{
    "item": "C2",
    "group": "C",
    "index": 6
} 

现在想要根据组的顺序分配新的索引值:例如[B,C,A]应该导致:

{
    "item": "B1",
    "group": "B",
    "index": 1
}
{
    "item": "B2",
    "group": "B",
    "index": 2
}
{
    "item": "C1",
    "group": "C",
    "index": 3
} 
{
    "item": "C2",
    "group": "C",
    "index": 4
} 
{
    "item": "A1",
    "group": "A",
    "index": 5
}
{
    "item": "A2",
    "group": "A",
    "index": 6
}

有没有办法在一个更新语句中执行此操作,还是必须单独为每个文档运行查询?同样重要的是,组内的初始排序不会发生变化。

0 个答案:

没有答案