2012-11-29 2 views
6

저는 mongodb에서 정수 수학을 시도하고 몇 가지 문제가 있습니다. mongo db aggregation 프레임 워크에서 doubles를 위나 아래로 반올림하는 방법이 있습니까?Mongodb 집계 프레임 워크에 floor 함수가 있습니까?

+0

내가 할 수있는 최선의 방법은 모듈러스를 사용하고 다음과 같이 뺍니다. (num-mod (num, 1)). 여전히 double을 출력하지만 적어도 정수 값의 double 값을 갖는다. (그리고 나는 클라이언트 측을 던질 수있다). – CasualT

+2

MongoDB 2.2 용 [Aggregation Framework 산술 함수] (http://docs.mongodb.org/manual/reference/aggregation/#arithmetic-operators)에는'$ floor' 또는'$ ceiling'이 포함되지 않습니다. 추가하고 싶은 기능이나 연산자가 있다면, "MongoDB SERVER 프로젝트"(https://jira.mongodb.org/browse/SERVER)에서 "Aggregation Framework"구성 요소로 제안하십시오. – Stennie

+0

문서를 직접 살펴보면서, 그게 내가 생각한 것입니다. 그러나 내가 명백한 것을 놓치지 않았는지 확인하고 싶었습니다. 다행히도 나는 지금 당장에 해결해야 할 일이있다. :) (옆으로 : 앞으로 어떤 시점에서 기능 요청을 작성합니다). – CasualT

답변

9

Stennie의 의견에 따르면 바닥 및 천장 방법은 지원되지 않습니다.

위의 내 의견에 따르면, 내가 찾을 수있는 가장 좋은 해결책은 floor function과 동일한 결과를 가져 오는 (num-mod (num, 1))과 같은 작업을 수행하는 것입니다. MongoDB 3.2에서 시작

+0

곧 제공 될 예정입니다. https://docs.mongodb.org/manual/release-notes/3.2-reference/#exp._S_floor – CasualT

1

, 다음과 같은 산술 집계 연산자를 사용할 수 있습니다 사용할 수 있습니다 : 어떤면 당신에게서 정수로 변환 할 수

필요. 구문은 간단합니다 : { $function: <number> }

+0

11 월 4 일에 저의 원래 대답에 대한 코멘트 : – CasualT

+1

@CasualT and I 그냥 새로운 문서를 읽은 후 조금 더 자세한 내용을 적어 둡니다 :-) –

+0

많은 감사를드립니다. :) – CasualT

관련 문제