簡體   English   中英

從 couchdb 檢索數據(如何驗證值是否在數據庫中)

[英]Retrieve data from couchdb (how to verify that a value is in a database)

如何從 couchdb 數據庫中檢索數據,而不是在數據庫的文檔中,而是在數據庫的所有文檔中。 我已經驗證了一個值是否在文檔中,但我現在想驗證一個值是否在一個特殊的數據庫中。

在這里很難具體說明,因為您沒有提供任何示例數據。 您的意思是某個特定值是否存在於任何文檔中的任何位置,或者某個特定字段是否在任何文檔中包含特定值?

如果您指的是前者,我建議您提出更好的數據 model。 所以讓我們關注后者。 假設您的文檔包含名為special的字段,並且您想知道是否有任何此類文檔在此字段中具有值 99:

{
    ...
    "special": 99
}

創建一個以值為鍵的視圖:

function(doc) {
  if (doc && doc.special) {
    emit(doc.special, null);
  }
}

現在您可以檢查此數據庫中是否存在文檔以獲取特殊字段的值:

# Look for the value 99
% acurl 'https://XYZ.cloudant.com/aaa/_design/test/_view/special?key=99'  
{"total_rows":3,"offset":2,"rows":[
   {"id":"a3c424e99f3cc9988a2553bb680ac7f8","key":99,"value":null}
]}

在我的數據庫aaa中有一個文檔,其 id a3c424e9... ,在special字段中的值為 99。 這就是所謂的反向索引。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM