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

mongodb, pymongo, tổng hợp cho kết quả lạ (một cái gì đó về con trỏ)

Kết quả của một truy vấn tổng hợp là một con trỏ, như đối với một find thông thường truy vấn. Trong trường hợp pymongo CommandCursor có thể lặp lại, do đó bạn có thể thực hiện bất kỳ thao tác nào sau đây:

cursor = db.points.aggregate(...)

# Option 1
print(list(cursor))

# Option 2
for document in cursor:
    print(document)

Lưu ý: as arun đã nhận thấy , trong cả hai trường hợp, tức là sau khi bạn tạo danh sách ngoài con trỏ hoặc lặp lại trong vòng lặp for, bạn sẽ không thể lặp lại qua con trỏ. Trong trường hợp đó, tùy chọn đầu tiên sẽ trở nên tốt hơn, nếu bạn muốn sử dụng nó trong tương lai, vì bạn có thể sử dụng danh sách thu được tùy thích, vì nó đã có trong bộ nhớ.
Lý do của việc không thể nhắc lại rằng con trỏ thực sự ở trên máy chủ và nó gửi từng đoạn dữ liệu, và sau khi nó đã gửi cho bạn tất cả dữ liệu (hoặc máy chủ kết thúc), con trỏ sẽ bị phá hủy.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongo:đếm số lần xuất hiện từ trong một bộ tài liệu

  2. Cập nhật đối tượng lồng nhau trong MongoDB nếu nó tồn tại, nếu không hãy thêm nó

  3. java spring MappingJacksonJsonView không làm toString trên mongodb ObjectId

  4. Nhập bộ sưu tập mongo vào bộ sưu tập hiện có mà không cần ghi đè nó

  5. (nút:71307) [DEP0079] DeprecationWarning