0
我使用Scala和Mongoldb-卡斯巴中,我也得到了一些數據具有:Mongoldb-卡斯巴:獲得第一場比賽的集合
val myData: Traversable[Imports.DBObject] = myCollection.find(query).toTraversable
返回的數據是這樣的集合:
[ {_id:「...」, 價格:[ {myValue:「...」,...}, {myValue:「...」,...},... ] } , {... },... ]
我需要的是,它是第一個不是空的myValue
。
我嘗試不同的東西,如:
myData.foldLeft(List[Any]()) { (acc, v) =>
acC++ v.get("prices").asInstanceOf[BasicDBList].filter(_.asInstanceOf[DBObject].getOrElse("myValue", "").toString.nonEmpty).take(1)
}
但它沒有返回一個單一的值,除非我使它更加複雜。我沒有嘗試過findMap
或collectFirst
。
任何想法如何從該數據中提取一個單一的myValue
?