Ich versuche, eine Aggregation auf einem MongoDB-Dokument mit Pymongo durchzuführen. Ich verwende auch PyCharm IDEgefunden BAD_CHARACTER in Aggregationsabfrage (MongoDB/pymongo)
MongoDB version = 3.4.4
Pymongo version = 3.4.0
Python version = 3.5.2
Ich habe eine Sammlung: Player mit einem Dokument wie folgt aussehen:
{'jersey': '11',
'height': '6-1',
'displayName': 'Maurice Williams',
'lname': 'Williams',
'fname': 'Maurice',
'_id': ObjectId('590137b105488b49ace349ac'),
'team': 'IND'}
{'jersey': '12',
'height': '6-4',
'displayName': 'Tom Brady',
'lname': 'Brady',
'fname': 'Tom',
'_id': ObjectId('590137b105488b49ace34551'),
'team': 'NE'}
ich ein Python-Code schreibe von Team zwei Dokumente zu verbinden. Ich habe diesen Code ein:
Database.py Code-Schnipsel:
import pymongo
class Dbase:
def setupConnection(self):
uri = "mongodb://127.0.0.1:27017"
Mongoclient = pymongo.MongoClient(uri)
Mongoclient.drop_database('MongoProject')
database = Mongoclient['MongoProject']
return database
App.py Code-Schnipsel:
import urllib.parse
import json
import pymongo
from Database import Dbase
def main():
Dbase_Obj = Dbase()
conn = Dbase_Obj.setupConnection()
collectionPlayerDetl = conn['PlayerDetails']
####select query using Join on both Player and Team details
collectionPlayerDetl.aggregate([
{
$lookup:{
from:'TeamDetails',
localField: "team",
foreignField: "code",
as:"team_descp"}
},
{
$project:{
"team_descp.id":0}
}
[![\]][1]][1])
auf beiden Abfragen ich versucht bin, bekomme ich einen Syntaxfehler auf $ Projekt und $ lookup - "Erklärung erwartet, gefunden BAD_CHARACTER"
Bitte helfen Sie. Vielen Dank im Voraus.