1

우리는 동일한 시간대 &에 모든 사용자가있는 간단한 응용 프로그램을 가지고 있으므로 mongo date 객체에 시간대 정보를 저장하는 데 관심이 없습니다.MongoDB - 시간대없이 시간을 저장

다른 개발자가 관리하는 공통 데이터베이스를 사용하는 마이크로 서비스가 여러 가지 있습니다. 이들 각각은 명시 적으로 시간대 관련 항목을 명시 적으로 설정해야합니다. & 잘못된 데이터 세트에서 동일한 결과를 잊어 버렸습니다.

이 때문에 현재 MongoDB를의 사람들 Mongo Data Types

은 시간대없이 날짜를 저장하는 지원하지 않습니다.

알고 그냥 열망 그 몽고에서 시간대하지 않고 날짜를 표현하기 위해 자신의 어떤 다른 방법 이는 우리가 몽고의 데이터베이스 쿼리를 활용할 수 여전히 수에 의해 기반으로 날짜 날짜 범위 등 최신에서

같은 구문 동시에 DBA가 레코드를 읽고 관리하는 것이 편리 할 것입니다. 이 답변에

답변

0

봐 : https://stackoverflow.com/a/6776273/6105830

당신은 긴 표현 (밀리 초 형식 YYYYMMDDHHMMSS)의 두 가지 유형을 사용할 수 있습니다. 이것들은 시간대를 저장하지 않고 범위 쿼리를 만들 수있는 유일한 방법입니다.

아쉽게도 일부 집계 속성이 손실되었습니다. 그러나 당신은 두 가지 표현을 지키고 적절한시기에 사용하는 것과 같은 것을 할 수 있습니다.

+0

hmmm 문제를 게시하기 전에이 게시물을 확인했습니다. 이 방법의 문제점은 둘 다 인간이 읽을 수없는 날짜를 만든다는 것입니다. 따라서 콘솔에서 이전에 직접 수행 할 수있는 DBA 연산은 사람이 읽을 수있는 값을 int 값으로 또는 그 반대로 변환하기 위해 일부 변환 래퍼를 사용해야합니다. 따라서 다른 문제로 이어집니다. – tarunkumar

+0

yyyyMMddHHmmss 형식을 읽을 수 없다고 생각합니다. haha ​​ 하지만 문제는 다른 방식 (단 하나만 가능)으로 시간대를 저장하고이 집합과 마찬가지로 시간대 오프셋을 쿼리에 추가하는 것입니다 (자바) : { "$ 프로젝트": { "날짜": { "$ 추가"[ "$ 날짜", 에는 TimeZone.getDefault() getOffset (에 System.currentTimeMillis()) . ] } } } –

+0

oopss는 yyyyMMddHHmmss에 대한 나의 이해가 잘못되었을 수 있습니다. 추출한 값만 int/long으로 저장한다고 가정하고 있습니다. 그래, 난 완벽하게 범위 쿼리뿐만 아니라 우리가 일년 무시 해야하는 몇 가지 사용자 지정 정규식을 작성해야하지만 완벽하게 작동해야한다고 생각합니다. 또한 두 번째 제안 된 솔루션을 시도 할 것입니다. – tarunkumar

관련 문제