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

Truy vấn MongoDB để tìm nạp giá trị ngẫu nhiên bằng cách sử dụng khái niệm Map Reduce.

Đối với giá trị ngẫu nhiên với Map Reduce, hãy sử dụng khái niệm mapReduce () cùng với Math.random (). Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.demo651.insertOne ({Value:10}); {"inherit":true, "insertId":ObjectId ("5e9f0330e3c3cd0dcff36a57")}> db.demo651.insertOne ({Value:20}); { "inherit":true, "insertId":ObjectId ("5e9f0332e3c3cd0dcff36a58")}> db.demo651.insertOne ({Value:30}); {"Recog":true, "insertId":ObjectId ("5e9f0335e3c3cd0dcff36a59")}> db.demo651.insertOne ({Value:40}); {"Recognition":true, "insertId":ObjectId ("5e9f0337e3c3cd0dcff36a5a")}> db.demo651.insertOne ({Value:50}); {"Recog":true, "insertId":ObjectId ("5e9f0339e3c3cd0dcff36a5b")}> db.demo651.insertOne ({Value:60}); {"Recog":true, "insertId":ObjectId ("5e9f033be3c3cd0demo651 demo36a5c")} insertOne ({Value:70}); {"Recognition":true, "insertId":ObjectId ("5e9f033ee3c3cd0dcff36a5d")}> db.demo651.insertOne ({Value:80}); {"nition ":true," insertId ":ObjectId (" 5e9f0340e3c3cd0dcff36a5e ")} 

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.demo651.find (); 

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

 {"_id":ObjectId ("5e9f0330e3c3cd0dcff36a57"), "Giá trị":10} {"_id":ObjectId ("5e9f0332e3c3cd0dcff36a58"), "Giá trị":20} {"_id":ObjectId ("5e9f36a59") , "Giá trị":30} {"_id":ObjectId ("5e9f0337e3c3cd0dcff36a5a"), "Giá trị":40} {"_id":ObjectId ("5e9f0339e3c3cd0dcff36a5b"), "Giá trị":50} {"_id":ObjectId "5e9f033be3c3cd0dcff36a5c"), "Giá trị":60} {"_id":ObjectId ("5e9f033ee3c3cd0dcff36a5d"), "Giá trị":70} {"_id":ObjectId ("5e9f0340e3c3cd0dcff36", "Giá trị / pre5"> 

Sau đây là truy vấn để tìm nạp dữ liệu -

> map =function () {...... if (Math.random () <0.1) {... nhũ (this._id, this); ...} ...} function () {if (Math.random () <0,1) {allow (this._id, this); }}>> Reduce =function (key, values) {... return giá trị; ...} function (key, values) {return giá trị;}>> db.demo651.mapReduce (map, Reduce, {out:' demo_651 '}); {"result":"demo_651", "timeMillis":1104, "counts":{"input":8, "release":1, "Reduce":0, "output":1}, "ok":1}> db.demo_651.find (); 

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

 {"_id":ObjectId ("5e9f033be3c3cd0dcff36a5c"), "giá trị":{"_id":ObjectId ("5e9f033be3c3cd0dcff36a5c"), "Giá trị":60}}