如果有多个带有couchbase查询的数组,如何创建一个新条目?

时间:2017-06-09 05:54:22

标签: couchdb couchbase n1ql

  

现在,我收到这样的数据。

{
 "data": {
  "name": "entertainment",
  "carriers": [111,222,333]
 }
}
  

但如果运营商不止这样,我想要新的输入/记录

{
 "data": {
  "name": "entertainment",
  "carriers": 111
  }
},
{
 "data": {
  "name": "entertainment",
  "carriers": 222
  }
},
{
 "data": {
  "name": "entertainment",
  "carriers": 333
 }
}
  

如何实现这样的数据?

2 个答案:

答案 0 :(得分:0)

使用NEST clause

SELECT * FROM bucket
NEST bucket.carriers

答案 1 :(得分:0)

尝试以下查询

from orders o unnest o.carriers a select {"carriers":a, "name":o.name } as data;

这应该可以为您提供所需的输出 -

[
 {
  "data": {
  "carriers": 111,
  "name": "entertainment"
 }
},
{
  "data": {
  "carriers": 222,
  "name": "entertainment"
 }
},
{
"data": {
  "carriers": 333,
  "name": "entertainment"
}
}
]

此查询假定以下内容 - 桶名 - 订单 样本文件 -

{
  "name": "entertainment",
  "carriers": [
    111,
    222,
    333
  ]
}