prosource

파이썬에서 mongo 쿼리를 제한하는 방법

probook 2023. 5. 23. 22:01
반응형

파이썬에서 mongo 쿼리를 제한하는 방법

나는 python으로 mongodb에서 데이터를 검색하려고 합니다.제 db에는 많은 데이터가 들어 있습니다.그래서 나는 검색하는 동안 데이터를 제한하고 싶습니다.나는 노력했다.

import datetime
from pymongo import Connection
connection = Connection('localhost',27017)
db = connection['MyWork']


db_data = db.myusers.find().limit(2)
#db_data = db.myusers.find()[0:2]
print db_data
print db_data.count()
print db_data[0]
print db_data[1]
print db_data[2]

하지만 위에서 시도했을 때 두 개 이상의 서류가 오고 있습니다.사용 중pymongo운전 기사값을 제한하는 방법

<pymongo.cursor.Cursor object at 0x000000000267D518>
3
{u'age': 24.0, u'_id': ObjectId('552b6e90aad3e2d909d5fb28'), u'place': u'Ravipadu', u'name': u'Shiva'}
{u'age': 28.0, u'_id': ObjectId('552b6eabaad3e2d909d5fb29'), u'place': u'Rajahmundry', u'name': u'Anil'}
{u'age': 30.0, u'_id': ObjectId('552b6ec1aad3e2d909d5fb2a'), u'place': u'Manchili', u'name': u'Kishore'}

질문에 지정된 대로 인덱스된 액세스는 다음을 무시합니다.limit.그리고.count()에서는 설명서에 설명된 대로 제한을 준수하지 않거나 기본적으로 건너뜁니다.합격할 수 있습니다with_limit_and_skip=True만들기 위해서count()제한적으로 일하다

print db_data.count(with_limit_and_skip=True)

또는 커서를 반복하여 한계를 확인할 수 있습니다.

for data in db.myusers.find().limit(2):
    print data

db.myusers.find(limit=2)

어떤 조건을 적용하고 싶다면, 당신은 사용할 수 있습니다.db.myusers.find({query}, limit=2)결과 수를 계산하려면 다음을 사용합니다.db.myusers.find({query}, limit=2).count()

언급URL : https://stackoverflow.com/questions/29604573/how-to-limit-mongo-query-in-python

반응형