Làm cách nào để thêm trường mới vào tài liệu hiện có trong MongoDB Compass?
Để thêm trường mới vào mọi tài liệu trong bộ sưu tập MongoDB, bạn có thể sử dụng toán tử $set. Cú pháp như sau db.yourCollectionName.update({}, { $set: {"yourFieldName": yourValue} }, false, true); Để hiểu cú pháp trên, chúng ta hãy tạo một bộ sưu tập với một số tài liệu. Truy vấn để tạo một bộ sưu tập với các tài liệu như sau >db.addNewFieldToEveryDocument.insertOne({"StudentName":"John","StudentAddress":"US "}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906ae") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"David","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906af") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Carol","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b0") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Bob","StudentAddress":"US" }); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b1") } 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.addNewFieldToEveryDocument.find().pretty(); Sau đây là đầu ra { "_id" : ObjectId("5c6efc0b6fd07954a48906ae"), "StudentName" : "John", "StudentAddress" : "US" } { "_id" : ObjectId("5c6efc0b6fd07954a48906af"), "StudentName" : "David", "StudentAddress" : "UK" } { "_id" : ObjectId("5c6efc0b6fd07954a48906b0"), "StudentName" : "Carol", "StudentAddress" : "UK" } { "_id" : ObjectId("5c6efc0b6fd07954a48906b1"), "StudentName" : "Bob", "StudentAddress" : "US" } Sau đây là truy vấn để thêm một trường mới vào mọi tài liệu > db.addNewFieldToEveryDocument.update({}, { $set: {"StudentAge": 24} }, false, true); WriteResult({ "nMatched" : 4, "nUpserted" : 0, "nModified" : 4 }) Ở trên, chúng tôi đã thêm một trường mới “Tuổi học sinh”. 24 trong mọi tài liệu. Hãy để chúng tôi kiểm tra trường “Tuổi học sinh”. 24 có được thêm thành công vào mọi tài liệu hay không. Truy vấn như sau Tôi có một bộ sưu tập trong MongoDB của mình với hàng nghìn tài liệu. Mỗi tài liệu trông như thế này hiện tại
Với đoạn mã sau, tôi đã quản lý để thêm một trường mới vào TẤT CẢ hơn 4000 tài liệu
Các tài liệu có cấu trúc mới trong đó >db.addNewFieldToEveryDocument.insertOne({"StudentName":"John","StudentAddress":"US "}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906ae") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"David","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906af") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Carol","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b0") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Bob","StudentAddress":"US" }); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b1") }7 là một >db.addNewFieldToEveryDocument.insertOne({"StudentName":"John","StudentAddress":"US "}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906ae") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"David","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906af") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Carol","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b0") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Bob","StudentAddress":"US" }); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b1") }8
Bây giờ, vấn đề là tôi muốn thêm nhiều mục vào >db.addNewFieldToEveryDocument.insertOne({"StudentName":"John","StudentAddress":"US "}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906ae") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"David","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906af") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Carol","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b0") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Bob","StudentAddress":"US" }); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b1") }7 trong đó mỗi mục là một >db.addNewFieldToEveryDocument.insertOne({"StudentName":"John","StudentAddress":"US "}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906ae") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"David","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906af") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Carol","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b0") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Bob","StudentAddress":"US" }); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b1") }8 chứa 2 0
Những gì tôi đã cố gắng là đây >db.addNewFieldToEveryDocument.insertOne({"StudentName":"John","StudentAddress":"US "}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906ae") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"David","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906af") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Carol","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b0") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Bob","StudentAddress":"US" }); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b1") }0 Vấn đề là tôi chỉ có thể nhận được một mặt hàng mới trong ngày >db.addNewFieldToEveryDocument.insertOne({"StudentName":"John","StudentAddress":"US "}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906ae") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"David","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906af") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Carol","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b0") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Bob","StudentAddress":"US" }); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b1") }7. Nó liên tục được thay thế bằng các giá trị mới khi tôi lặp qua các mục Hãy giúp tôi CẬP NHẬT Với sự trợ giúp của @Explosion Pills, tôi đã thêm được tất cả 2, 3, 4, v.v. tới >db.addNewFieldToEveryDocument.insertOne({"StudentName":"John","StudentAddress":"US "}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906ae") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"David","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906af") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Carol","StudentAddress":"U K"}); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b0") } >db.addNewFieldToEveryDocument.insertOne({"StudentName":"Bob","StudentAddress":"US" }); { "acknowledged" : true, "insertedId" : ObjectId("5c6efc0b6fd07954a48906b1") }7 mới được tạo của tôi. Tuy nhiên, hiện tại tôi có một vấn đề khác là tôi có các mục 'trùng lặp' trong đó trường 6 giống nhau. tôi không muốn điều đóMột cách tao nhã để loại bỏ trùng lặp là gì? Tôi đã không đủ rõ ràng trước đó về vấn đề trùng lặp. Điều đó là, các mặt hàng khác nhau phải có tên khác nhau, e. g. ITEM1, ITEM2, v.v. ; . Điều tôi muốn so sánh là những 6 của họSẽ tốt hơn/dễ dàng hơn nếu tôi lưu trữ dữ liệu trong một cấu trúc khác? . Hiện tại, nó giống như sau, từ đó tôi muốn loại bỏ các loại trái cây trùng lặp với các trường "DƯA DỪA" Làm cách nào để thêm trường mới vào tài liệu hiện có trong MongoDB java?Cách thêm trường vào mảng MongoDB bằng Java . Giới thiệu. . điều kiện tiên quyết. . Bộ dữ liệu MongoDB. . Thiết lập quyền truy cập vào triển khai MongoDB. . Thiết lập quyền truy cập vào cơ sở dữ liệu MongoDB. . Thiết lập quyền truy cập vào bộ sưu tập MongoDB. . Thêm tài liệu MongoDB mới vào tài liệu MongoDB hiện có Làm cách nào để thêm trường mảng mới vào tài liệu hiện có trong MongoDB?Vì vậy, có thể thêm một trường mới vào một mảng bằng cách sử dụng thao tác cập nhật . Toán tử $push được sử dụng để chèn trường bên trong mảng và nếu chúng ta muốn thêm nhiều trường, hãy sử dụng $each bên trong $push. |