Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?

Để xóa tất cả các bản ghi của một bộ sưu tập trong MongoDB shell, hãy sử dụng phương thức remove(). Cú pháp như sau -

db.yourCollectionName.remove({});

Để hiểu cú pháp, 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 tài liệu như sau -

> db.deleteAllRecordsDemo.insertOne({"StudentName":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6ca32f684a30fbdfd596")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Carol","StudentAge":21});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cb22f684a30fbdfd597")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Mike","StudentAge":23,"Hobby":["Learning","Photography"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cde2f684a30fbdfd598")
}

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

Sau đây là đầu ra -

{ "_id" : ObjectId("5c8f6ca32f684a30fbdfd596"), "StudentName" : "John" }
{
   "_id" : ObjectId("5c8f6cb22f684a30fbdfd597"),
   "StudentName" : "Carol",
   "StudentAge" : 21
}
{
   "_id" : ObjectId("5c8f6cde2f684a30fbdfd598"),
   "StudentName" : "Mike",
   "StudentAge" : 23,
   "Hobby" : [
      "Learning",
      "Photography"
   ]
}

Đây là truy vấn để xóa tất cả các bản ghi của một bộ sưu tập trong MongoDB

> db.deleteAllRecordsDemo.remove({});
WriteResult({ "nRemoved" : 3 })

Nhìn vào truy vấn trên, chúng tôi đã xóa tất cả các bản ghi khỏi bộ sưu tập. Nếu bạn cố lấy các bản ghi từ bộ sưu tập trên, bạn sẽ không nhận được gì

Bộ sưu tập xóa MongoDB có sẵn hai phương thức trong MongoDB, sau khi thực hiện lệnh drop trong máy chủ cơ sở dữ liệu MongoDB, nó sẽ cho kết quả ở định dạng true hoặc false. Nếu bộ sưu tập có trong cơ sở dữ liệu và nó sẽ xóa thành công thì nó sẽ trả về kết quả là true. Nếu bộ sưu tập không có trong cơ sở dữ liệu và nếu nó không xóa thành công thì nó sẽ trả về kết quả là false. Chúng tôi có thể sử dụng phương pháp thả và xóa để xóa bất kỳ bộ sưu tập nào khỏi MongoDB, chúng tôi cũng cần cung cấp tên bộ sưu tập tại thời điểm xóa bộ sưu tập

cú pháp

Bắt đầu khóa học khoa học dữ liệu miễn phí của bạn

Hadoop, Khoa học dữ liệu, Thống kê và những thứ khác

Cú pháp dưới đây, hiển thị việc xóa bộ sưu tập trong MongoDB

Gói khoa học dữ liệu tất cả trong một(360+ khóa học, hơn 50 dự án)

Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?
Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?
Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?
Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?

Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?
Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?
Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?
Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?

Giá
Xem khóa học

360+ Khóa học trực tuyến. hơn 50 dự án. Hơn 1500 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập Trọn đời
4. 7 (83.902 xếp hạng)

1) Sử dụng phương pháp thả

db.collection_name.drop()

• Trong cú pháp trên, tên bộ sưu tập được định nghĩa là tên của bộ sưu tập mà chúng ta đã sử dụng để xóa khỏi máy chủ cơ sở dữ liệu

• Phương thức thả được sử dụng để loại bỏ bộ sưu tập đã chỉ định khỏi máy chủ cơ sở dữ liệu

2) Sử dụng phương pháp loại bỏ

1) db.collection_name.remove ({})

2) db.collection_name.remove (<query>, {Writeconcern, justone})

Trong cú pháp trên, tên bộ sưu tập được định nghĩa là từ đó chúng ta phải xóa các tài liệu

Xóa là phương pháp chúng tôi đã sử dụng để xóa tài liệu khỏi bộ sưu tập

Nếu chúng ta chuyển tập kết quả trống ({ }), phương thức xóa sẽ xóa tất cả tài liệu khỏi tập hợp

Tham số truy vấn được xác định là loại bỏ các tài liệu đã chỉ định khỏi bộ sưu tập, tiêu chí nào chúng tôi đã cung cấp trong một truy vấn

Chỉ một tham số được xác định là chỉ xóa một tài liệu khỏi bộ sưu tập. Chúng tôi cần kích hoạt nó bằng cách chỉ định từ khóa là true. Sau khi sử dụng từ khóa đúng trong tiêu chí lựa chọn, chỉ có một tài liệu bị xóa. Nếu chúng tôi không sử dụng từ khóa đúng trong tiêu chí lựa chọn của mình, thì tất cả các tài liệu sẽ bị xóa khỏi bộ sưu tập.
• Trong khi sử dụng Writeconcern, nó sẽ bỏ qua việc sử dụng ghi quan tâm mặc định.

Làm cách nào để xóa bộ sưu tập trong MongoDB?

Chúng tôi có thể xóa bộ sưu tập trong MongoDB bằng cách sử dụng hai phương pháp

1) Thả

2) Xóa

Nếu chúng ta muốn loại bỏ toàn bộ bộ sưu tập và các chỉ mục của nó, thì chúng ta có thể sử dụng phương thức drop để loại bỏ bất kỳ bộ sưu tập nào khỏi cơ sở dữ liệu

Sử dụng phương thức thả, bộ sưu tập và các chỉ mục của chúng sẽ bị xóa khỏi máy chủ cơ sở dữ liệu

Trong khi sử dụng phương thức xóa, chúng tôi có thể xóa các tài liệu đã chỉ định khỏi bộ sưu tập

Sử dụng phương thức xóa, tất cả tài liệu khỏi bộ sưu tập sẽ bị xóa nhưng chỉ mục của tài liệu vẫn còn, chúng sẽ không bị xóa khỏi máy chủ cơ sở dữ liệu

Sau khi xóa bất kỳ bộ sưu tập nào khỏi máy chủ cơ sở dữ liệu, nó sẽ hiển thị bên dưới hai tập kết quả

1) Đúng
2) Sai

Ví dụ dưới đây cho thấy tập kết quả sẽ hiển thị giá trị thực tại thời điểm xóa bộ sưu tập khỏi máy chủ cơ sở dữ liệu.
Trong ví dụ bên dưới, tập kết quả hiển thị đầu ra là true. Bộ kết quả hiển thị kết quả là đúng vì bộ sưu tập bị xóa khỏi máy chủ cơ sở dữ liệu.

________số 8

Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?

Ví dụ dưới đây cho thấy tập kết quả sẽ hiển thị giá trị sai tại thời điểm xóa bộ sưu tập khỏi máy chủ cơ sở dữ liệu

Trong ví dụ dưới đây, tập kết quả hiển thị đầu ra là sai. Bộ kết quả hiển thị đầu ra là sai vì bộ sưu tập không bị xóa khỏi máy chủ cơ sở dữ liệu hoặc nó không có trong cơ sở dữ liệu

________số 8

Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?

Để xóa bất kỳ bộ sưu tập nào khỏi cơ sở dữ liệu, trước tiên, chúng ta cần kết nối với cơ sở dữ liệu cụ thể. Bộ sưu tập sẽ không bị xóa khi chúng tôi chưa kết nối hoặc sử dụng cơ sở dữ liệu được chỉ định

Ví dụ dưới đây cho thấy rằng chúng ta cần sử dụng cơ sở dữ liệu đã chỉ định trước khi xóa bộ sưu tập khỏi cơ sở dữ liệu

> db.deleteAllRecordsDemo.insertOne({"StudentName":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6ca32f684a30fbdfd596")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Carol","StudentAge":21});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cb22f684a30fbdfd597")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Mike","StudentAge":23,"Hobby":["Learning","Photography"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cde2f684a30fbdfd598")
}
0

Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?

Lần đầu tiên chúng ta chưa sử dụng một cơ sở dữ liệu cụ thể tại thời điểm xóa bộ sưu tập, đồng thời nó sẽ hiển thị kết quả sai, vì vậy bộ sưu tập không bị xóa khỏi cơ sở dữ liệu

Lần thứ hai chúng tôi đã sử dụng một cơ sở dữ liệu được chỉ định và sau đó chúng tôi đã sử dụng phương thức thả, cùng một lúc, bộ sưu tập sẽ bị xóa và hiển thị tập kết quả là đúng

Ví dụ

Ví dụ dưới đây cho thấy bộ sưu tập xóa trong MongoDB

1) Xóa bộ sưu tập bằng phương pháp thả

Trong ví dụ dưới đây, chúng tôi đã xóa bộ sưu tập bằng phương thức drop. Chúng tôi đã xóa nhóm theo bộ sưu tập khỏi cơ sở dữ liệu thử nghiệm

Mã số

> db.deleteAllRecordsDemo.insertOne({"StudentName":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6ca32f684a30fbdfd596")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Carol","StudentAge":21});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cb22f684a30fbdfd597")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Mike","StudentAge":23,"Hobby":["Learning","Photography"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cde2f684a30fbdfd598")
}
1

Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?

2) Xóa các tài liệu đã chỉ định khỏi bộ sưu tập bằng phương thức xóa

Trong ví dụ dưới đây, chúng tôi đã xóa các tài liệu được chỉ định khỏi bộ sưu tập bằng các tiêu chí được chỉ định

Chúng tôi đã xóa tài liệu có emp_code là 101. Tất cả các tài liệu từ bộ sưu tập emp_test đều bị xóa mà emp_code là 101

Mã số

> db.deleteAllRecordsDemo.insertOne({"StudentName":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6ca32f684a30fbdfd596")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Carol","StudentAge":21});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cb22f684a30fbdfd597")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Mike","StudentAge":23,"Hobby":["Learning","Photography"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cde2f684a30fbdfd598")
}
2

Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?

3) Xóa các tài liệu đơn lẻ khỏi bộ sưu tập chỉ bằng một tham số

Trong ví dụ dưới đây, chúng tôi đã xóa một tài liệu khỏi bộ sưu tập bằng cách sử dụng chỉ một tham số

Chúng tôi đã sử dụng tiêu chí trên tham số emp_code mà emp_code lớn hơn 100. Trong bộ sưu tập, chúng tôi đã thấy rằng 3 tài liệu có emp_code lớn hơn 100, nhưng chỉ có một tài liệu bị xóa trong khi chỉ xác định một giá trị tham số là đúng

Mã số

> db.deleteAllRecordsDemo.insertOne({"StudentName":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6ca32f684a30fbdfd596")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Carol","StudentAge":21});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cb22f684a30fbdfd597")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Mike","StudentAge":23,"Hobby":["Learning","Photography"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cde2f684a30fbdfd598")
}
3

Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?

4) Xóa tất cả tài liệu khỏi bộ sưu tập bằng phương pháp xóa

Trong ví dụ dưới đây, chúng tôi đã xóa tất cả các tài liệu khỏi bộ sưu tập emp_test bằng phương thức xóa

Chúng tôi chưa xác định bất kỳ tiêu chí chọn nào bằng cách sử dụng lệnh xóa, vì vậy tất cả các tài liệu từ bộ sưu tập emp_test sẽ bị xóa

Chúng ta có thể thấy rằng trong ví dụ dưới đây, tất cả các tài liệu từ emp_test sẽ bị xóa nhưng các chỉ mục và cấu trúc của bảng không bị xóa

Mã số

> db.deleteAllRecordsDemo.insertOne({"StudentName":"John"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6ca32f684a30fbdfd596")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Carol","StudentAge":21});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cb22f684a30fbdfd597")
}
> db.deleteAllRecordsDemo.insertOne({"StudentName":"Mike","StudentAge":23,"Hobby":["Learning","Photography"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8f6cde2f684a30fbdfd598")
}
4

Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong mongodb?

Phần kết luận

Sử dụng phương thức drop, chúng ta có thể loại bỏ bộ sưu tập và các chỉ mục của chúng và sử dụng phương thức remove, chúng ta có thể xóa một hoặc tất cả các tài liệu khỏi bộ sưu tập. Nếu bộ sưu tập tồn tại trong cơ sở dữ liệu, tập kết quả sẽ hiển thị kết quả là true nếu không nó sẽ hiển thị false ở đầu ra

Bài viết được đề xuất

Đây là hướng dẫn về MongoDB Delete Collection. Ở đây chúng ta thảo luận về định nghĩa, Làm cách nào để xóa bộ sưu tập trong MongoDB? . Bạn cũng có thể xem các bài viết sau để tìm hiểu thêm –

Làm cách nào để xóa dữ liệu khỏi bộ sưu tập trong MongoDB?

Trình vỏ MongoDB cung cấp các phương thức sau để xóa tài liệu khỏi bộ sưu tập. .
Để xóa nhiều tài liệu, hãy sử dụng db. thu thập. xóaMany()
Để xóa một tài liệu, hãy sử dụng db. thu thập. xóaOne()

Thao tác nhanh nhất để xóa toàn bộ bộ sưu tập trong MongoDB là gì?

drop() sẽ xóa toàn bộ bộ sưu tập (rất nhanh) và tất cả các chỉ mục trên bộ sưu tập

Làm cách nào để xóa tất cả dữ liệu khỏi bộ sưu tập trong MongoDB Compass?

Để xóa tài liệu, di chuột qua tài liệu và nhấp vào biểu tượng . Sau khi bạn xác nhận, La bàn sẽ xóa tài liệu khỏi bộ sưu tập.

Lệnh MongoDB nào được sử dụng để xóa tài liệu khỏi bộ sưu tập?

remove() Phương thức remove() xóa tài liệu khỏi cơ sở dữ liệu. Nó có thể xóa một hoặc tất cả các tài liệu khỏi bộ sưu tập phù hợp với biểu thức truy vấn đã cho.