2017-02-24 148 views
0

「數據」:{ 「d」:[ 100, 0, 1, 1, 0, 22, 55, 66, 99,] 這是我的數據格式在Cloudant NOSql數據庫數組中的每個整數「d」對應於來自設備的特定參數值,是否可以僅從數組中查詢與特定參數對應的所需數據(可能是100)?我可以爲特定數據查詢Cloudant NOSQL數據庫嗎?

+0

你的意思是你總是要查詢數組的第一個元素 - 即d [0]? – Raj

+0

是的,我想查詢數組的第一個元素「d」 –

回答

0

創建與此映射函數,該函數返回具有在陣列data.d的第一指標的值100所有文檔的視圖:

function (doc) { 
    if (doc.data && doc.data.d && doc.data.d.length>0 && doc.data.d[0] == 100) 
    emit([doc._id,doc.data.d[0]], 1); 
} 

這裏有一個查詢列出含有3個數據行和1的樣本數據庫包含上述地圖功能設計文檔:

https://rajsingh.cloudant.com/aaa/_all_docs?include_docs=true 

而這裏僅返回文檔滿足視圖約束查詢:

https://rajsingh.cloudant.com/aaa/_design/views/_view/dzero?limit=200&reduce=false&include_docs=true 
0

我不知道如果我完全理解這個問題,但我想你想是創建一個地圖功能,看起來像這樣一個觀點:

function(doc) { 
    doc.data.d.map(function(parameter) { 
    emit(parameter); 
    }); 
} 

這將允許你例如,搜索參數值22並查找具有此參數值的所有文檔。

+0

參數值不斷變化,因爲這些是傳感器值,我應該查詢值的位置(d [0]或d [5]),以獲得來自雲數據庫的相應數據,現在我正在讀取上述給定數據的整個數組。我的要求是查詢特定位置並獲取數據 –

相關問題