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

Trả về tất cả các bản ghi độ tuổi là int với truy vấn MongoDB


Để lấy tất cả các độ tuổi là int từ các bản ghi có bản ghi chuỗi và int age, hãy sử dụng $ type. Loại $ trong MongoDB $ type chọn các tài liệu trong đó giá trị của trường là một phiên bản của loại BSON được chỉ định.

Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.demo470.insertOne({"Age":23});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e805456b0f3fa88e2279070")
}
> db.demo470.insertOne({"Age":"Unknown"});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e80545cb0f3fa88e2279071")
}
> db.demo470.insertOne({"Age":24});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e805461b0f3fa88e2279072")
}
> db.demo470.insertOne({"Age":"Not provided"});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e80546bb0f3fa88e2279073")
}

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 () -

> db.demo470.find();

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5e805456b0f3fa88e2279070"), "Age" : 23 }
{ "_id" : ObjectId("5e80545cb0f3fa88e2279071"), "Age" : "Unknown" }
{ "_id" : ObjectId("5e805461b0f3fa88e2279072"), "Age" : 24 }
{ "_id" : ObjectId("5e80546bb0f3fa88e2279073"), "Age" : "Not provided" }

Sau đây là truy vấn để trả về tất cả các độ tuổi là int -

> db.demo470.find( {'Age' : { $type :"number"} } );

Điều này sẽ tạo ra kết quả sau -

{ "_id" : ObjectId("5e805456b0f3fa88e2279070"), "Age" : 23 }
{ "_id" : ObjectId("5e805461b0f3fa88e2279072"), "Age" : 24 }