[de] Pymongo (1/2)
2023. 8. 31. 16:37ㆍdata engineer/database
mongo를 파이썬으로 사용하는 방법
Mongo_client
mongo_client는 pymongo.mongo_client.MongoClient의 별칭으로
class pymongo.mongo_client.MongoClient(host='localhost', port=27017, document_class=dict, tz_aware=False, connect=True, **kwargs) 의 전체 내용을 담고있다.
따라서, 몽고 클라이언트는 객체로서 호출할 수 있다.
Mongo_client 연결 순서
- client 등록하기 -> localhost의 port: 27017 (default)
- rdb의 table과 같은 collection 불러오기
- rows에 해당하는 documents 불러오기
from pymongo import MongoClient
client = MongoClient("localhost",27017)
#client = MongoClient("mongodb://localhost:27017")
#db 가져오는 법
db = client.test
#db = client["test"]
#collection 가져오는 법
collection = db.multi
#collection = db["multi"]
documents = collection.find()
print(documents)
#결과: 객체로 확인 가능
>> <pymongo.cursor.Cursor object at 0x7f8568397af0>
여기서 pymongo.cursor.Cursor 는 query 요청시 나오는 결과 데이터셋에 향하는 포인터
파이썬의 Generator처럼 만들어졌고, 반복문을 통해 값을 불러올 수 있다!

여기 가상의 score db가 있다고 하면
from pymongo import MongoClient
from pprint import pprint
client = MongoClient("localhost", 27017)
db = client.test
score = db.score
#전체 doc출력
cursor = score.find()
for doc in cursor:
pprint(doc)
#이순신 doc 출력
lee = score.find({"name":"이순신"})
pprint(lee) # 커서객체 주소값만 나옴
for doc in lee:
pprint(doc) #이름이 이순신에 해당하는 doc 출력
#홍길동 doc 출력
hong = score.find_one({"name":"홍길동"})
pprint(hong)
'data engineer > database' 카테고리의 다른 글
[de]Bigquery:기본정보와 문법 (0) | 2024.03.07 |
---|---|
[de]Bigquery: 구글서치콘솔 데이터 확인 (0) | 2024.03.01 |
[de]Bigquery (0) | 2024.02.29 |
[de] Oracle (1/3) (0) | 2023.09.21 |
[de] Pymongo (2/2) (0) | 2023.09.21 |