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

Làm cách nào để tìm kiếm người dùng theo cả họ và tên với MongoDB?

Tôi thấy một số lỗi trong mã của bạn gây ra kết quả không mong muốn.

  1. Đường ống tổng hợp chấp nhận một loạt các hoạt động của khung tổng hợp. Trong trường hợp của bạn, bạn đang thiếu [] nhà điều hành. Nó sẽ giống như

    User.aggregate([{$project...},{$match...}])

  2. Trong giai đoạn $ so khớp, bạn đang sử dụng regex, nếu bạn đang sử dụng /../ kiểu regex, bạn không cần phải quấn nó quanh dấu ngoặc kép. Nó phải là /bob j/i

Đây là ví dụ hoàn chỉnh:

User.aggregate([
  {$project: { "name" : { $concat : [ "$firstName", " ", "$lastName" ] } }},
  {$match: {"name": {$regex: /bob j/i}}}
]).exec(function(err, result){
  console.log(result);
});

Bạn sẽ thấy [ { _id: 574c3e20be214bd4078a9149, name: 'Bob Jerry' } ] trên màn hình.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tại sao gặp lỗi mongod dead nhưng subsys bị khóa và Không đủ dung lượng trống cho các tệp tạp chí trên Linux?

  2. MongoDB InsertBatch JObject - Lỗi tuần tự hóa

  3. Tìm kiếm nhiều trường cho nhiều giá trị trong MongoDB

  4. Trong MongoDB, tìm kiếm trong một mảng và sắp xếp theo số lượng kết quả phù hợp

  5. Lưu trữ Từ điển với các giá trị đa hình trong mongoDB bằng C #