我有这个查询,它在MongoDB Booster中工作,但我不明白为什么我只能用Python复制这个,就像我在MySQL上查询一样,我该怎么办这个查询,所以它可以在MongoDB中正常工作
在MongoDB Booster中工作的查询,但是当我在Python中复制时它不起作用:
db.bol_rac.aggregate( [
{
$project:
{
"id" : 1,
"id_drz": 1,
"location" :
{
$cond: { if: { $eq: [ "$id_drzavljanstvo", 688 ] }, then: "Country", else: "Foreign country" }
}
}
}
] );
答案 0 :(得分:1)
我的意思是,我已经成功地解决了这个问题,问题在于我还没有添加'' on if,else,then ..
from pymongo import MongoClient
client = MongoClient()
db = client.bol_rac
cursor = db.bol_rac.aggregate([
{
'$project':
{
'id' : 1,
'id_drz': 1,
'location' :
{
'$cond': { 'if': { '$eq': [ '$id_drz', 688 ] }, 'then': 'Country', 'else': 'Foreign country' }
}
}
}
])
for document in cursor:
print(document)