2013-04-03 14 views
12

örn. "23:55:00"MongoDB'de günün saatini nasıl saklayabilirim? Bir ip gibi mi? Rasgele yıl/ay/gün mü verin?

Postgres - Mongo arası bir otobüs çizelgeleri veritabanını dönüştürme sürecimdeyim.
Postgres, durma zamanlarını depolamak için kullanıyorum bir time without timezone veri türüne sahip ve bunu nasıl geçireceğimi anlamaya çalışmakta güçlük çekiyorum.

Bunu bir javascript Date nesnesine dönüştürmek için rasgele bir yıl/ay/gün vererek çok anlamlı görünmüyor, ancak veri ayrıştırıldıktan sonra zamanlarla bazı basit hesaplamalar yapmayı planlıyorum. 'bir sonraki durma zamanı' gibi şeyler göster, bu yüzden eğer bir dize olarak saklarsam, sonuçta karşılaştırmalar yapmak için bir şeye dönüştürmek zorunda kalacağım

MongoDB'ye gerçekten yeniyim ve herhangi bir tavsiyede bulunmaktan mutluluk duyarım

cevap

20

Süreyi bir sayı olarak kaydedebilirsiniz (00:00:00 den beri geçen süre). Gerekirse doğal olarak sıralanır ve hh: mm: ss biçimine dönüştürülür.

//from 23:55:00 to the stored time 
storedTime = hours * 3600 + minutes * 60 + seconds 

//from the stored time to 23:55:00 
hours = storedTime/3600 // needs to be an integer division 
leaves = storedTime - hours * 3600 
minutes = leaves/60 
seconds = leaves - 60 * minutes 
+0

Teşekkür ederiz! Bu çok daha mantıklı – CheapSteaks

İlgili konular