CouchBase编程的激情

CouchBase编程的激情,couchbase,n1ql,spring-data-couchbase,Couchbase,N1ql,Spring Data Couchbase,我希望获取Couchbase文档中对象数组中的单个元素,但我能够获取对象数组 我尝试使用以下查询获取数组,“从测试中选择countryDetails” { "type":"countries", "docName":"CountryData", "countryDetails":[ { "name":"US", "code":"+1", "stateInfo":[ {

我希望获取Couchbase文档中对象数组中的单个元素,但我能够获取对象数组

我尝试使用以下查询获取数组,
“从测试中选择countryDetails”

{
   "type":"countries",
   "docName":"CountryData",
   "countryDetails":[
      {
         "name":"US",
         "code":"+1",
         "stateInfo":[
            {
               "name":"Florida",
               "id":"1212"
            },
            {
               "name":"NewYork",
               "id":"1214"
            }
         ]
      },
       {
         "name":"France",
         "code":"+33",
         "stateInfo":[
            {
               "name":"Grand Est",
               "id":"5212"
            },
            {
               "name":"Brittany",
               "id":"5214"
            }
         ]
      }
   ]
}
我尝试使用,
selectcountrydetailsfromtest获取数组


我喜欢将结果作为
[{“name”:“US”,“code”:“+1”},{“name”:“France”,“code”:“+33”}]

您试图做的似乎不可能。通过以下查询,您可以更接近所需内容:

select raw countryDetails from test

但此查询的结果仍将结果包装在额外级别的数组中。

如果投影countryDetails,它将投影整个子对象。 如果需要创建子对象的一部分,则需要显式地投影该子对象

以下数组构造将提供您期望的数据表示形式

SELECT ARRAY {v.name,v.code} FOR v IN t.countryDetails END AS contryDetails
FROM test AS t 
WHERE t.type = "countries";

为什么我被投了否决票,任何事情都需要纠正