2015-04-02 20 views
0

我能找到的庫是否打開或不改變下面的模式現在被關閉:當時間被存儲爲HH檢查開放小時 - MongoDB的

"openhours" : { 
        "sun" : { 
         "day" : "Sun", 
         "active" : true, 
         "open" : "01:00", 
         "close" : "00:05" 
        }, 
        "mon" : { 
         "day" : "Mon", 
         "active" : false, 
         "open" : "00:00", 
         "close" : "00:00" 
        }, 
        "tue" : { 
         "day" : "Tue", 
         "active" : false, 
         "open" : "00:00", 
         "close" : "00:00" 
        }, 
        ... 
        "sat" : { 
         "day" : "Sat", 
         "active" : false, 
         "open" : "00:00", 
         "close" : "00:00" 
        } 
} 

我做了很多的研究,並不能找到任何解決方案:文件中的MM格式。

任何幫助表示讚賞?

回答

3

即使時間是以「HH:MM」格式存儲的,看起來您仍然可以進行明智的查詢(由於您有零填充,這些時間字符串的字典順序與時間順序相同)。

下面是一些僞代碼給你:

var date = new Date(); 
var hhmm = date.getHHMM(); // '20:46' 
var dayname = date.getDayName(); // 'thu' 

db.library.find({"openhours.#{dayname}.open": {'$lt': hhmm}, "openhours.#{dayname}.close": {'$gt': hhmm}});