Làm cách nào để xóa một đối tượng khỏi một mảng trong mongodb?
Bạn có thể xóa (các) tài liệu lồng nhau trong một tài liệu MongoDB cụ thể bằng cách sử dụng toán tử Show [ { "_id": ObjectId("5a934e000102030405000000"), "name": "John Doe", "addresses": [ { "street": "456 Ave", "city": "london", "country": "UK" }, { "street": "123 Ave", "city": "nyc", "country": "US" }, { "street": "221B Baker St.", "city": "london", "country": "UK" }, ] }, { "_id": ObjectId("5a934e000102030405000001"), "name": "Jane Roe", "addresses": [ { "street": "742 Evergreen Terrace", "city": "springfield", "country": "US" } ] } ] Ví dụ, để xóa tất cả " db.collection.update( { "_id": ObjectId("5a934e000102030405000000") }, { $pull: { "addresses": { "city": "london" } } } ); Hy vọng bạn tìm thấy bài viết này hữu ích. Nó được xuất bản vào ngày 05 tháng 6 năm 2021. Hãy thể hiện tình yêu và sự ủng hộ của bạn bằng cách Tuần trước tôi phải làm việc trên một dự án cũ với MongoDB. Một vài tài liệu có mảng nhúng cần được cập nhật và tôi nhận ra rằng mỗi khi tôi phải thực hiện loại hoạt động này, tôi sẽ phải tra cứu rất nhiều trên Google để học lại những thứ tôi đã quên Vì vậy, lần này tôi quyết định ghi chép kỹ lưỡng mọi thứ tôi học được và viết một bài báo có các ví dụ để Paula trong tương lai có thể đi thẳng vào các ví dụ thay vì tìm kiếm lại mọi thứ trên Google. Và này. Có lẽ ai đó khác cũng thấy nó hữu ích Tôi cũng bao gồm các hình ảnh động ngắn minh họa cho từng ví dụ 🤓 Trong bài viết này, tôi sẽ chỉ nói về việc thêm và xóa các phần tử khỏi tài liệu với mảng nhúng. Tuần sau tôi sẽ đăng một bài viết mới về cách cập nhật nội dung các phần tử trong mảng DB ví dụ mà chúng ta sẽ sử dụng bao gồm một bộ sưu tập đơn giản các "combo bánh rán" từ một cửa hàng bánh rán. Mỗi combo đều có tên và các loại bánh sẽ được tặng kèm nếu khách chọn combo đó. Đây là lược đồ hoàn chỉnh
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Chúng ta có thể thêm một phần tử mới vào một mảng bằng cách sử dụng toán tử Thêm một phần tử vào cuốiTrong ví dụ sau, chúng tôi sẽ thêm một chiếc bánh donut màu hồng vào tài liệu đầu tiên được tìm thấy với
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Thêm một yếu tố vào một vị trí cụ thểSử dụng công cụ sửa đổi 1, mặc dù chúng tôi chỉ thêm một phần tử duy nhấtTrong ví dụ sau, chúng tôi sẽ thêm một chiếc bánh donut màu hồng vào tài liệu đầu tiên được tìm thấy với
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Thêm nhiều phần tửSử dụng công cụ sửa đổi 1 chúng ta có thể đẩy nhiều hơn một phần tử vào mảng của mìnhTrong ví dụ sau, chúng tôi sẽ thêm hai chiếc bánh rán (màu trắng và sô cô la) vào cuối mảng trong tài liệu đầu tiên có tên "B&W"
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Xóa một phần tử khỏi mảngĐể xóa một phần tử khỏi mảng, chúng ta sử dụng toán tử 4. Bên trong đối tượng $pull, chúng ta phải chỉ định một cặp khóa-giá trị. khóa là tên của thuộc tính mảng từ tài liệu của chúng tôi và giá trị là bộ lọc mà chúng tôi muốn áp dụng để xác định phần tử nào sẽ bị xóaTrong ví dụ sau, chúng tôi sẽ xóa tất cả các bánh rán màu trắng khỏi các tài liệu đang hoạt động trong bộ sưu tập bánh ránCombos
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Hãy tự mình thửTôi đã tạo một repo để thử các truy vấn MongoDB trong bộ nhớ bằng Node. js với trình điều khiển Jest và MongoDB Node. Tôi sử dụng các bài kiểm tra để thực hiện truy vấn và xác minh xem mọi thứ đã được cập nhật chính xác hay chưa. Tôi cũng bao gồm một trình ghi nhật ký in các tài liệu đã cập nhật trong bảng điều khiển hiển thị các thay đổi đã được áp dụng bằng cú pháp tô sáng khác Bạn có thể tìm thấy các ví dụ tôi đưa vào bài viết này trong thư mục 5pawap90 / try-mongodb-queryMột dự án mẫu đơn giản để thử các truy vấn MongoDB trong bộ nhớ bằng cách sử dụng JestMột dự án đơn giản để thử các truy vấn MongoDB trong bộ nhớ bằng cách sử dụng Jest. Bao gồm một trình ghi nhật ký ghi lại sự khác biệt giữa dữ liệu thử nghiệm ban đầu và dữ liệu sau khi cập nhật bằng cách sử dụng tô sáng cú pháp khác |