동영상 강좌는 유튜브 채널 '웹학교'를 이용하시기 바랍니다.
결과 필터링
컬렉션에서 문서를 찾을 때 쿼리 개체를 사용하여 결과를 필터링 할 수 있습니다.
find() 메서드의 첫 번째 인수는 쿼리 개체이며 검색을 제한하는 데 사용됩니다.
"Jong-ro 123"주소가 있는 문서를 찾기
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": "Jong-ro 123" }
mydoc = mycol.find(myquery)
for x in mydoc:
print(x)
고급 쿼리
고급 쿼리를 만들려면 쿼리 개체에서 수정자를 값으로 사용할 수 있습니다.
예 : "주소"필드가 글자 "J"이상 (알파벳 순)으로 시작하는 문서를 찾으려면 보다 큰 수정자를 사용하십시오 : { "$ gt": "J"} :
주소가 문자 "J"이상으로 시작하는 문서를 찾기:
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": { "$gt": "J" } }
mydoc = mycol.find(myquery)
for x in mydoc:
print(x)
정규 표현식으로 필터링
수정 자로 정규 표현식을 사용할 수도 있습니다.
** 정규식은 문자열을 쿼리하는 데만 사용할 수 있습니다.
"주소"필드가 문자 "J"로 시작하는 문서 만 찾으려면 정규식 { "$ regex": "^ J"}을 사용하십시오.
주소가 문자 "J"로 시작하는 문서를 찾는 코드.
import pymongo
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
mydb = myclient["mydatabase"]
mycol = mydb["customers"]
myquery = { "address": { "$regex": "^J" } }
mydoc = mycol.find(myquery)
for x in mydoc:
print(x)
등록된 댓글이 없습니다.