인터넷에서 무수히 많은 질문을 받았지만 여기서 무슨 일이 일어나고 있는지 파악할 수 없으며 몇 시간 동안 벽에 머리를 두드 리고 있습니다.javascript/mongodb/mapreduce의 전역 변수
이 작동 :
in myscript.js :
obj = 'hello';
var f = function() {
printjson('obj=' + obj);
}
f();
$는 몽고 myscript.js
OBJ = 안녕하세요
이 작동하지 않습니다 : 왜 그
date1 = "2013-09-03T00:00:00Z";
date2 = "2013-09-04T00:00:00Z";
var mapIntensities = function() {
emit(this.unit, this.intensity);
};
var reduceIntensities = function(unit, intensities) {
return {date: date1, "unit": unit, "intensity": Array.sum(intensities)};
};
db.units.mapReduce(mapIntensities, reduceIntensities, {out: "aggregate_intensities", query: {"DATE": {$gte: ISODate(date1), $lt: ISODate(date2)}}})
입니까? 문제는 reduce() 함수에서 발생합니다 (date1을 하드 코드 된 값으로 바꾼다면)
mongodb가 mapreduce를 수행하는 방법과 관련이 있습니까? date1
자체를 줄지도 내에서 정의되지 않습니다 때문에,