如何在couchbase文档中使用N1QL更新数组中元素的顺序

时间:2017-09-21 10:47:08

标签: couchbase n1ql

我有一个基础文档doc,其中包含一个数组(以及其他几个键)。是否可以使用N1QL查询更新此数组中元素的顺序。

例如

{
    networkList: [
       {'name': 'network1'},
       {'name': 'network2'},
       {'name': 'network3'}
  ]
}

变为

{
    networkList: [
       {'name': 'network2'},
       {'name': 'network1'},
       {'name': 'network3'}
  ]
}

注意:我不想对列表进行排序。我只是想改变任何给定元素的位置。例如,在上例中将第二个元素移动到第一个位置。

提前致谢

1 个答案:

答案 0 :(得分:1)

从给定位置移除ARRAY元素并插入所需位置,如下所示。 ARRAY_INSERT(ARRAY_REMOVE(networkList,networkList [3]),0,networkList [3]))