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

Toán tử $ trong mongoDB với _id trong perl

Trước tiên, hãy đảm bảo rằng bạn đang sử dụng đúng cú pháp. Ví dụ đầu tiên của bạn không phải là mã Perl hợp lệ, vì bạn đang bao gồm một đoạn JSON làm tham số truy vấn.

Thứ hai, giả sử các giá trị ID này là của MongoDB ObjectID, bạn sẽ cần tạo các đối tượng OID để phân biệt chúng với các chuỗi thông thường. Và đảm bảo sử dụng các dấu ngoặc kép ('' ) khoảng $in , nếu không Perl sẽ cố gắng nội suy $in dưới dạng một biến (có lẽ không có gì trong đó).

Vì vậy, tôi giả sử bạn muốn làm điều gì đó như sau:

$db->$collection->find( {
    "_id" => { 
        '$in' => [ MongoDB::OID->new( value => "4f520122ecf6171327000137" ), 
                   MongoDB::OID->new( value => "4f4f49c09d1bd90728000034" )
                 ]
             } 
} );

Chỉnh sửa:Ngoài ra, việc sử dụng tên phương thức tự động tải để truy xuất bộ sưu tập đã không được chấp nhận trong một thời gian. Tốt hơn hết bạn nên sử dụng $db->get_collection( "collection name" )->find( ... )




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Không thể khởi động MongoDB dưới dạng dịch vụ

  2. Kết nối với mongoDB từ tập lệnh bash shell

  3. ClusterControl - Tất cả các tính năng nổi bật và cải tiến từ năm 2017

  4. làm cách nào để kết nối với mongodb từ mã Ruby?

  5. Chuyển đổi dữ liệu MongoDB trên Tìm