2017-03-07 35 views
1

假設我想這樣MongoDB的Java的異步:合併篩選和排序爲FindOneAndUpdate

.find(Filters.exists("a", false)) 
      .sort(Sorts.orderBy(Sorts.descending("b"),Sorts.ascending("c"))) 

運行查詢但隨着findOneAndUpdate操作。

.findOneAndUpate(bson???, Updates.combine(Updates.set("b", 1), Updates.set("c", 2)), callback) 

如何創建正確的bson參數,結合過濾器和排序?

回答

1

您不能將過濾器與排序組合。

FindOneAndUpdate需要三個參數。通過第一個參數作爲過濾器,第三個參數是FindOneAndUpdateOptions

喜歡的東西

findOneAndUpdate(filter,update, 
         new FindOneAndUpdateOptions().sort(sort));