2013-01-10 32 views
5

Giả sử tôi có một bộ sưu tập với các đối tượng như thế này, trong đó thuộc tính ts chứa Dấu thời gian Unix.Khung kết hợp - Chuyển đổi dấu thời gian Unix thành ISODATE

{ 
    "_id" : ObjectId("50ef1e0f1e816a74ad835a5a"), 
    "ts" : 1357851660 
} 

Có cách nào để chuyển đổi lĩnh vực ts đến một ISODate sử dụng khung tập hợp, vì vậy tôi có thể sử dụng các nhà khai thác ngày ($ dayOfYear, $ dayOfMonth, ...)?

+0

Tôi không tin rằng khung tổng hợp đã truyền atm – Sammaye

+0

Câu hỏi hay. Tôi chỉ có thể nghĩ đến việc làm điều này với MapReduce, nhưng điều đó giống như sử dụng một khẩu súng ngắn cho một con bọ chét. – mjhm

+1

Tôi đã trả lời câu hỏi này trong câu hỏi StackOverflow được liên kết: http://stackoverflow.com/a/27828951/572077 – Astral

Trả lời

5

Tất cả thông tin và thử nghiệm tôi có thể tìm hiểu cho biết điều này là không thể như của MongoDB 2.2.2. Nó khá dễ thực hiện bằng cách sử dụng Map/Reduce.

Đánh dấu câu trả lời này là câu trả lời hay nhất hiện có, nhưng tôi sẵn sàng đánh giá điều này trong tương lai nếu chức năng mới được thêm vào MongoDB để hỗ trợ điều này hoặc nếu ai đó đưa ra kết quả tốt cách giải quyết.

+0

Bản đồ của bạn sẽ giảm đi cái gì, nếu bạn không phiền –

Các vấn đề liên quan