2017-04-27 3 views
1

pymongo를 사용하여 MongoDB 문서에서 집계를 수행하려고합니다. 나는 또한 컬렉션이 PyCharm IDE찾음 BAD_CHARACTER 집계 쿼리 (MongoDB/pymongo)

MongoDB version = 3.4.4 
Pymongo version = 3.4.0 
Python version = 3.5.2 

을 사용하고 있습니다 : PlayerDetails를 다음과 같이보고 문서 : 내가 팀에 의해 두 개의 문서를 결합하는 파이썬 코드를 작성하고

{'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'} 

. 나는이 다음과 같은 코드가 있습니다 :

Database.py 코드 :

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 코드 조각 : 나는 시도하고 두 쿼리에

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]) 

, 나는 $에 구문 오류 프로젝트 및 $ 조회 - "예상되는 진술 : BAD_CHARACTER"

도와주세요. 미리 감사드립니다.

답변

0

은 우리가 quotes- 추가해야 할 것 같은데

collectionPlayerDetl.aggregate([ 
{ 
"$lookup": { 
"from":'TeamDetails', 
"localField": 'team', 
"foreignField": 'code', 
"as":'CombinedDetails' 
} 
}])