Computer >> Máy Tính >  >> Lập trình >> MongoDB

Làm cách nào để giới hạn số lượng ký tự được trả về từ một trường trong truy vấn MongoDB?

Đối với điều này, hãy sử dụng MongoDB $ substr. Trước tiên, hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> dblimitTheNumberOfCharactersDemoinsertOne({"Title":"MongoDB is No SQL database"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cf23013b64a577be5a2bc0e")
}
> dblimitTheNumberOfCharactersDemoinsertOne({"Title":"MySQL is a relational database"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cf2302db64a577be5a2bc0f")
}

Sau đây là truy vấn để hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -

> dblimitTheNumberOfCharactersDemofind()pretty();

Điều này sẽ tạo ra tài liệu sau -

{
   "_id" : ObjectId("5cf23013b64a577be5a2bc0e"),
   "Title" : "MongoDB is No SQL database"
}
{
   "_id" : ObjectId("5cf2302db64a577be5a2bc0f"),
   "Title" : "MySQL is a relational database"
}

Sau đây là truy vấn để giới hạn số lượng ký tự được trả về từ một trường trong truy vấn MongoDB -

> dblimitTheNumberOfCharactersDemoaggregate(
   [
      {
         $project:
         {
            Characters: { $substr: [ "$Title", 0, 20 ] }
         }
      }
   ] 
);

Điều này sẽ tạo ra tài liệu sau -

{ "_id" : ObjectId("5cf23013b64a577be5a2bc0e"), "Characters" : "MongoDB is No SQL da" }
{ "_id" : ObjectId("5cf2302db64a577be5a2bc0f"), "Characters" : "MySQL is a relationa" }