2014-01-29 192 views
0

我的文檔結構:蒙戈查詢

{ _id:objectID, 
    month:'2014-01' 
    daily:{ 
      '01':{}, 
      '02':{}, 
      '03':{} 
      . 
      . 
      . 
      '31':{} 


      } 
    } 

現在,我想每天查詢中的對象,這是在一個範圍內08至13(對說),是指對象只較大的08和小於13.日常對象中的這些鍵(01,02,... 31)是動態生成的。我不想檢索整個日常對象,然後在後端進行處理。請幫忙。

+0

告訴我們你試過了什麼? –

+0

這是一個糟糕的數據庫設計。你不應該有日期作爲關鍵 - 他們應該是價值觀。 – sashkello

+0

鍵可以是任何東西。而Mongodb具有無模式設計。這應該沒問題。 – Danish

回答

1

您無法從嵌入式數組中查詢切片。由於daily數組嵌入月份文檔中,因此不能將其各個條目視爲單個對象。

如果您的查詢查找單個日期,則應考慮通過爲每一天創建單個文檔來適當地建模數據。例如:

{ 
    _id: { month: '2014-01', day: 1 }, 
    /* rest of daily data here */ 
} 

這將允許您查詢特定月份的特定日期。