2017-05-05 58 views
0

对象字段考虑以下结构:如何订购的价值MongoDB的

"label_5" : { 
    "ranks" : { 
     "hotel_1" : 0.738805199017347, 
     "hotel_2" : 0.17653657117268828, 
     "hotel_3" : 0.04071552339502227, 
     "hotel_4" : 0.12543627348684705, 
     "hotel_5" : 0.375692808082533, 
     "hotel_6" : 0.6796857473988642, 
     "hotel_7" : 0.18080608668170495 
    } 
}, 
"label_6" : { 
    "ranks" : { 
     "hotel_1" : 0.40339830434450485, 
     "hotel_2" : 0.7106559576870051, 
     "hotel_3" : 0.6349776144488348, 
     "hotel_4" : 0.4260347490574752, 
     "hotel_5" : 0.6244178232434163, 
     "hotel_6" : 0.6569190693595632, 
     "hotel_7" : 0.16378308796300156, 
     "hotel_8" : 0.16766423698668875, 
     "hotel_9" : 0.7319011899938765 
    } 
}, 
"label_7" : { 
    "ranks" : { 
     "hotel_1" : 0.33694055774124787, 
     "hotel_2" : 0.4293637949091027, 
     "hotel_3" : 0.7925947261514583, 
     "hotel_4" : 0.8867890134535386, 
     "hotel_5" : 0.7927268526887514, 
     "hotel_6" : 0.09449794446136539 
    } 
} 

labels集合, 和下面的代码:

db.collection("labels").find({},{label_6:1, label_5:1}) 

我怎么能由他们的价值的酒店排序?

+1

您可以更新您的问题,以显示你正在寻找的输出? – JohnnyHK

+0

@JohnnyHK经过一些更多的研究后,我明白了我无法做到这一点,因为如果我的数据是用文档组织的,而我的数据是在一个文档中组织的,那么我只能进行排序。我对么? – Ben

回答

0

如果您正在寻找由特定的酒店排序,你可以使用.sort({"ranks.hotel_1":1})