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

Làm thế nào để chuyển đổi giá trị thành chuỗi bằng cách sử dụng $ toString trong MongoDB?

Hãy để chúng tôi xem một ví dụ để hiểu $ toString trong MongoDB. Để hiểu khái niệm trên, chúng ta hãy tạo một bộ sưu tập với tài liệu. Truy vấn để tạo một bộ sưu tập với một tài liệu như sau -

> db.objectidToStringDemo.insertOne ({"UserName":"John"}); {"nition ":true," insertId ":ObjectId (" 5c92b80036de59bd9de0639d ")}> db.objectidToStringDemo.insertOne" :"Chris"}); {"nition ":true," insertId ":ObjectId (" 5c92b80436de59bd9de0639e ")}> db.objectidToStringDemo.insertOne ({" UserName ":" Larry "}); {" Recog ":true, "insertId":ObjectId ("5c92b80936de59bd9de0639f")}> db.objectidToStringDemo.insertOne ({"UserName":"Robert"}); {"inherit":true, "insertId":ObjectId ("5c92b81836de59a0 "9de063 / 0 "9de063> 

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 (). Truy vấn như sau -

> db.objectidToStringDemo.find (). pretty (); 

Sau đây là kết quả -

 {"_id":ObjectId ("5c92b80036de59bd9de0639d"), "UserName":"John"} {"_id":ObjectId ("5c92b80436de59bd9de0639e"), "UserName":"Chris"} {"_id":ObjectId ( "5c92b80936de59bd9de0639f"), "UserName":"Larry"} {"_id":ObjectId ("5c92b81836de59bd9de063a0"), "UserName":"Robert"} 

Đây là truy vấn để chuyển đổi ObjectId thành một giá trị chuỗi trong MongoDB tổng hợp. Truy vấn như sau -

> db.objectidToStringDemo.aggregate ([... {... $ project:{... _id:{... $ toString:"$ _id" ...} ...} ...} ...] ...); 

Sau đây là kết quả -

 {"_id":"5c92b80036de59bd9de0639d"} {"_id":"5c92b80436de59bd9de0639e"} {"_id":"5c92b80936de59bd9de0639f"} {"_id":"5c92b0"} 
 Để lấy ObjectId ban đầu, hãy sử dụng toán tử $ toObjectId - 

> db.objectidToStringDemo.aggregate ([{$ project:{_id:{$ toObjectId:"$ _id"}}}]); 

Sau đây là kết quả -

 {"_id":ObjectId ("5c92b80036de59bd9de0639d")} {"_id":ObjectId ("5c92b80436de59bd9de0639e")} {"_id":ObjectId ("5c92b80936de59bd9de59b8d9f") }