2
공식 Java API를 통해 MongoDB를 사용하고 있습니다. 여분의 노력없이 Long 값을 저장하고 검색 할 수 있습니다. 그러나 group()
함수를 사용하여이 값을 누적하려고하면 JavaScript 인터프리터가 모든 것을 Doubles로 변환하고 최종 결과가 Double이됩니다. count
가 긴 사실에 있음을 인터프리터를 알 수있는 방법이Double in MongoDB group() function
{
...
initial: { count: 0 },
reduce: "function (o, a) { a.count += o.count; }"
}
있습니까 : 여기
내 그룹 명령입니까?count: 0L
또는
count: Long(0)
과 같은 것입니까? 아니면 자바 측에서 축적을해야합니까?
답변 해 주셔서 감사합니다. 불행히도'NumberLong'은 작동하지 않았습니다 : "'ReferenceError : NumberLong is not defined'". MongoDB 문서 자체에서 언급하기 때문에 이상합니다. http://www.mongodb.org/display/DOCS/Data+Types+and+Conventions –
@ EserAygün : 그룹 대신 m/r을 사용하여 시도해 볼 수 있습니까? mongodb 쉘을 사용하여 드라이버 또는 mongodb에서 문제가되는 부분을 식별합니다. –
아! 버전 1.2.2가 설치되어있는 것으로 나타났습니다. 아마도 그것이 작동하지 않는 이유 일 것입니다. 다시 한 번 감사드립니다! –