취미와 밥줄사이
[Python] MongoDB Query 본문
Filter the Result
- collection에 documents를 찾을 때, 쿼리 객체를 사용하여 결과를 필터링 할 수 있다.
- find 메소드의 첫 번째 인자는 쿼리 객체이다. 그리고 쿼리 객체를 사용하여 제한된 검색을 할 수 있다.
-
# Find document(s) with address "Park Lane 38" import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = {"address":"Park Lane 38"} mydoc = mycol.find(myquery) for x in mydoc: print(x)
고급 쿼리
- 고급 쿼리를 만들기 위해 수정자를 쿼리 개체의 값으로 사용할 수 있습니다.
- 예를 들어 "주소" 필드가 문자 "S" 이상 (알파벳 순)으로 시작하는 문서를 찾으려면 보다 큼 수정자를 사용합니다.("$gt":"S"}:
-
# Find documents where the address starts with the letter "S" or higher: import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = {"address":{ "$gt":"S"} } mydoc = mycol.find(myquery) for x in mydoc: print(x)
정규표현식으로 필터링
- 정규표현식을 modifer로 사용가능함
- 정규표현식은 쿼리스트링에만 사용할 수 있습니다.
- "주소" 필드가 문자 "S"로 시작하는 문서만 찾으려면 정규식{"$regex":"^S"}를 사용합니다.
-
# Find documents where the address starts with the letter "S": import pymongo myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["customers"] myquery = {"address":{ "^S" } } mydoc = mycol.find(myquery) for x in mydoc: print(x)
REFERENCE
https://www.w3schools.com/python/python_mongodb_query.asp
'DB' 카테고리의 다른 글
[SQL] NULL Values (0) | 2021.11.01 |
---|---|
[SQL] SQL이란 (0) | 2021.10.29 |
[Python] MongoDB Find (0) | 2021.10.28 |
[Python] MongoDB Insert Document (0) | 2021.10.28 |
[Python] MongoDB Create Collection (0) | 2021.10.28 |