MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

MongoDB - In

Hãy tìm hiểu một số điều cơ bản về cách hoạt động của pymongo.

Giả sử bạn có một số bộ sưu tập trong Mongo với dữ liệu được chèn. Bạn muốn lấy dữ liệu từ bộ sưu tập đó bằng cách thực hiện các truy vấn:

cursor = db.model.find({'time': {'$gte': start, '$lt': end}})

Tìm phương pháp của "mô hình" đối tượng bộ sưu tập trả về Cursor object:một thực thể chứa tất cả thông tin về truy vấn và kết quả truy vấn.

Vì vậy, truy vấn được thực hiện và bước tiếp theo là nhận được kết quả. Các loại kết quả của truy vấn Mongo có thể khác nhau giữa các phương pháp. Trong trường hợp của chúng tôi (find phương thức) - kết quả là một loạt các đối tượng JSON (đối tượng trình lặp), mỗi đối tượng trong số chúng được đại diện bởi dict gõ bằng ngôn ngữ Python. Điều đó có nghĩa là bạn không phải phân tích cú pháp kết quả:chúng đã được phân tích cú pháp thành từng đoạn .

Một điều khác về Cursor :nó lười biếng. Có nghĩa là bạn nhận được kết quả theo yêu cầu. Trong trường hợp Cursor đối tượng, bạn phải lặp qua nó để lấy đối tượng được tìm nạp bằng truy vấn:

for result_object in cursor:
    print result_object   # result_object is a dict that holds JSON object
    result_object['_id']  # Mongo ObjectId of the result_object
    # result_object["<field_name>"]  # Value stored in a field named <fieldname>

Nói chung, bạn phải thử đọc Hướng dẫn Pymongo :nó khá ngắn và cung cấp hướng dẫn về cách thức hoạt động của toàn bộ trình điều khiển.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongodb - Đặt bản sao ở cấp db hoặc cấp bộ sưu tập

  2. API Connect hiển thị Không thể GET / apim / lỗi khi cập nhật giản đồ

  3. Làm thế nào để thêm định nghĩa của macro trong cmake?

  4. MongoError:Không xác thực được tài liệu - Làm cách nào để chèn cả float và int vào cùng một trường - được đánh dấu là trường kép?

  5. Redis hoặc Mongo để xác định xem một số có nằm trong phạm vi không?