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

Tìm kiếm trên nhiều bộ sưu tập trong MongoDB

Câu trả lời này đã lỗi thời. Kể từ phiên bản 3.2, MongoDB đã giới hạn hỗ trợ cho các phép nối bên ngoài bên trái với toán tử tổng hợp $ lookup

MongoDB không thực hiện các truy vấn kéo dài nhiều tập hợp - dấu chấm. Khi bạn cần kết hợp dữ liệu từ nhiều bộ sưu tập, bạn phải thực hiện việc đó ở cấp ứng dụng bằng cách thực hiện nhiều truy vấn.

  1. Bộ sưu tập truy vấn A
  2. Lấy các khóa phụ từ kết quả và đặt chúng vào một mảng
  3. Bộ sưu tập truy vấn B chuyển mảng đó làm giá trị của toán tử $ in-tơ-nét
  4. Kết hợp các kết quả của cả hai truy vấn theo chương trình trên lớp ứng dụng

Phải làm điều này nên là một ngoại lệ hơn là tiêu chuẩn. Khi bạn thường xuyên cần mô phỏng các JOIN như vậy, điều đó có nghĩa là bạn vẫn nghĩ quá quan hệ khi thiết kế lược đồ cơ sở dữ liệu của mình hoặc dữ liệu của bạn chỉ đơn giản là không phù hợp với khái niệm lưu trữ dựa trên tài liệu của MongoDB.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongodb Aggregation framework có nhanh hơn map / Reduce không?

  2. mongodb thêm bộ đếm vào mỗi tài liệu được truy xuất

  3. Dữ liệu trong cơ sở dữ liệu MongoDB được lưu trữ trên đĩa như thế nào?

  4. Hướng dẫn về MongoDB cho người mới bắt đầu (Hướng dẫn đầy đủ) - Học MongoDB trong 15 phút

  5. MongoDB giải phóng nhiều mảng