Sql 如何将两个参数值传递给couchdb视图?

Sql 如何将两个参数值传递给couchdb视图?,sql,couchdb,language-comparisons,Sql,Couchdb,Language Comparisons,我想在CouchDB视图中重现这个SQL SELECT name,department FROM Persons where id = ? and group_id = ? ; 如何在CouchDB中为此SQL编写视图和查询视图?您可以编写如下视图: function(doc) { if (doc.person_id && doc.group_id) { emit([doc.person_id, doc.group_id], {"name":doc.name,"

我想在CouchDB视图中重现这个SQL

SELECT name,department FROM Persons where id = ? and group_id = ? ;

如何在CouchDB中为此SQL编写视图和查询视图?

您可以编写如下视图:

function(doc) { 
  if (doc.person_id && doc.group_id) { 
    emit([doc.person_id, doc.group_id], {"name":doc.name,"department":doc.department});
  }
} 
我已将您的id更改为person\u id,因此它不会轻易与\u id混淆

我使用数组作为视图的键,因此您可以像这样轻松地查询它:

http://127.0.0.1:5984/testdb/_design/designdoc/_view/testview?key=[12,3]
这或多或少类似于此查询:

SELECT name, department FROM Persons where person_id = 12 and group_id = 3 ;
下面是一篇关于使用视图进行筛选和排序的文章:

couchdb wiki中有一个关于视图的非常好的页面:


CouCHDB指南中的这一章解释了数组键:

我写了一本食谱章节来回答这样的问题:希望这有助于:“乔治,这是一个常见的问题,这个问题现在措辞很好,也许你可以考虑重新开放。”it@SHernandez被接受的答案需要一些帮助;它甚至没有任何信息,除了一个链接。如果我在做预期的事情,我会把答案转换成评论;或者删除它。@JanLehnardt你的其他评论不知怎的丢失了。也许你或其他人想改进一下,你是救命恩人。我已经找了很久了+1.