2016-07-15 223 views
0

我有以下的JSON作爲Couchbase項:獲取嵌套對象在couchbase與N1QL

{ 
    "messageType": "TRANS", 
    "failCount": 0, 
    "workOrderDetailMap": { 
     "10873": { 
      "requestDate": "20160715151239", 
      "id": 10873, 
      "responseDate": "20160715151305", 
      "responseCode": 0, 
      "status": "SUCCESS", 
      "resultDocuments": [ 
       "xyz" 
      ] 
     } 
    } 
} 

,我想通過N1QL查詢來獲取resultCode領域:

Select * from myproject where workOrderDetailMap.responseCode = 0; 

我得到0結果。

我該怎麼做?

回答

5

你需要

select * from myproject where workOrderDetailMap.`10873`.responseCode = 0; 

如果您需要忽略10873:

select * from myproject where object_values(workOrderDetailMap)[0].responseCode = 0; 
+0

謝謝。但是,我的需求是如何參數化10873值?它在每個記錄中都是不同的。 –

+0

太棒了!這正是我正在尋找的..非常感謝你:) –

+0

@geraldss如何做這樣的嵌套數組加入。例如加入密鑰users.id = groups.group_id_record [*] .group_id?像這樣的東西? – rafi