나는 sum(col2)
이의 sum
의 모든 값을 의미 곳 결과가 col1/sum(col2)
Cloudant 사용자 정의 정렬
의 비율의 내림차순으로 정렬보고 싶은 내 데이터를 col2
. 나는 구름에 약간 새롭기 때문에 이것을 접근하는 가장 좋은 방법이 무엇인지 모르겠다. 몇 가지 옵션을 생각해 볼 수 있습니다.
- 또한 새 열
col1/sum(col2)
를 작성,sum(col2)
에 대한 새 열을 만들고 각 레코드에 대한col2
- 의 새 값으로 계속 업데이트. 그런 다음이 열을 정렬 할 수 있습니다.
- 보기을 사용하면 비율과 합계를 계산할 수 있습니다. 이렇게하면 새 열을 저장할 필요가 없으며 각 업데이트마다 값 비싼 계산을 수행 할 필요가 없습니다.
내가보기를 만들려고하고지도 기능은
function (doc) {
emit(doc._id, {"col1_value":doc.col1,"col2_value":doc.col2});
}
쉽게 충분하지만 나는 내가 액세스하는 방법에 대한 아무 생각이
function (keys, values, rereduce) {
if (rereduce) {
return sum(values);
} else {
return values.length;
}
}
줄이거 템플릿에 의해 혼란 스러워요 두 개의 열 값을 합친 다음 여기에서 집계하십시오. 이것은 가능한가? 필요한 결과를 얻을 수있는 다른 방법이 있습니까?
예. 감사합니다. 합계 (Y)를 계산하는 뷰를 어떻게 작성해야합니까? – AbtPst
보기 및지도/감추기 기능에 대해 읽어 보시기 바랍니다. 몇 가지 제안 된 출발점 : [here] (https://wiki.apache.org/couchdb/Introduction_to_CouchDB_views), [here] (http://www.ramblingincode.com/building-a-couchdb-reduce-function/) 및 [여기] (https://wiki.apache.org/couchdb/Built-In_Reduce_Functions). – Flimzy