$group當我使用 mongo cli 或 JavaScript 時,我可以在 mongodb 中的using子句之前找到并限制包含 NaN 值的列。但是,當我使用 python 及其主要庫“pymongo”時,它似乎無法做到這一點。如下代碼 NaN 不是 python 語法的一部分。而在 javaScript 中它是簡單直接的。任何身體有同樣的問題?
javascript
db.getCollection('plan.data_pool').aggregate([
{'$match':{geoid:'00','v':{"$ne":NaN}}},{"$group":{"_id":"$accountable_id","agg":{"$sum":"$v"}}}
])
蟒蛇(pymongo)
db['plan.data_pool'].aggregate([{'$match':{geoid:'00','v':{"$ne":NaN}}},
{"$group":{"_id":"$accountable_id","agg":{"$sum":"$v"}}}
data_pool集合的示例檔案是這樣的:
{
"_id" : ObjectId("619149fa0f91f1b3954f7128"),
"opg" : "sum",
"opt" : "sum",
"code" : "9-8-1-1-1-7",
"responsible" : [
"61"
],
"parent_id" : "610a6abb566701e77a214355",
"accountable_id" : "59",
"data_item" : "610a6c49566701e77a21435c",
"geoid" : "HQ",
"year" : 2019 ,
"period" : "3M",
"tf" : 3,
"w" : 100.0,
"p" : 6.0,
"v" : NaN,
"r" : 33.3333333333333,
"plan" : "60d2ce9cc0b1f833dbd9563a"
}
uj5u.com熱心網友回復:
NaNMongoDB 中的值由float('NaN')pymongo表示,因此您可以使用:
{'v': {'$ne': float('NaN')}}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/357792.html
上一篇:獲取架構內請求陣列中的資料
下一篇:以后如何更改貓鼬模式的鍵?
