Hướng dẫn mongodb delete many by _id - mongodb xóa nhiều bằng _id

{ "_id" : ObjectId["51ee3966e4b056fe8f074f48"], "userid" : "66", "clientid" : "88", "deviceid" : "22", "timestamp" : "1374214822000"}
{ "_id" : ObjectId["51ee507ae4b056fe8f074f4a"], "userid" : "66", "clientid" : "88", "deviceid" : "22", "timestamp" : "1374214822000"}
{ "_id" : ObjectId["51ee51fee4b056fe8f074f4b"], "userid" : "66", "clientid" : "88", "deviceid" : "22", "timestamp" : "1374214822000"}

Làm thế nào để xóa nhiều ID trong MongoDB?

Xóa [] phương thức xóa [] Xóa các 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.MongoDB Manual

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
7

Quan trọng

Trong hầu hết các trường hợp, giao dịch đa tài liệu phát sinh chi phí hiệu suất lớn hơn so với ghi tài liệu đơn lẻ và sự sẵn có của các giao dịch đa tài liệu không nên là một sự thay thế cho thiết kế lược đồ hiệu quả. Đối với nhiều kịch bản, mô hình dữ liệu được chuẩn hóa [tài liệu và mảng nhúng] sẽ tiếp tục tối ưu cho các trường hợp dữ liệu và sử dụng của bạn. Đó là, đối với nhiều kịch bản, mô hình hóa dữ liệu của bạn một cách thích hợp sẽ giảm thiểu nhu cầu cho các giao dịch đa tài liệu.

Để biết các cân nhắc sử dụng giao dịch bổ sung [như giới hạn thời gian chạy và giới hạn kích thước oplog], xem thêm các cân nhắc sản xuất.

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
8 method. This is not the documentation for a language-specific driver, such as Node.js.

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
7 xóa tài liệu cùng một lúc. Nếu nút chính không thành công trong hoạt động
db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
7, các tài liệu chưa bị xóa khỏi các nút thứ cấp không bị xóa khỏi bộ sưu tập.MongoDB driver documentation.

Bộ sưu tập

{
_id: ObjectId["563237a41a4d68582c2509da"],
stock: "Brent Crude Futures",
qty: 250,
type: "buy-limit",
limit: 48.90,
creationts: ISODate["2015-11-01T12:30:15Z"],
expiryts: ISODate["2015-11-01T12:35:15Z"],
client: "Crude Traders Inc."
}
9 có các tài liệu với cấu trúc sau:

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]

Hoạt động sau đây xóa tất cả các tài liệu trong đó

try {
db.orders.deleteMany[ { "client" : "Crude Traders Inc." } ];
} catch [e] {
print [e];
}
0:

Hoạt động trả về:

Hoạt động sau đây xóa tất cả các tài liệu trong đó

try {
db.orders.deleteMany[ { "client" : "Crude Traders Inc." } ];
} catch [e] {
print [e];
}
1 và
try {
db.orders.deleteMany[ { "client" : "Crude Traders Inc." } ];
} catch [e] {
print [e];
}
2 lớn hơn
try {
db.orders.deleteMany[ { "client" : "Crude Traders Inc." } ];
} catch [e] {
print [e];
}
3:

Đưa ra một bộ bản sao ba thành viên, thao tác sau đây chỉ định

try {
db.orders.deleteMany[ { "client" : "Crude Traders Inc." } ];
} catch [e] {
print [e];
}
4 của
try {
db.orders.deleteMany[ { "client" : "Crude Traders Inc." } ];
} catch [e] {
print [e];
}
5 và
try {
db.orders.deleteMany[ { "client" : "Crude Traders Inc." } ];
} catch [e] {
print [e];
}
6 của
try {
db.orders.deleteMany[ { "client" : "Crude Traders Inc." } ];
} catch [e] {
print [e];
}
7:

Nếu sự thừa nhận mất nhiều thời gian hơn giới hạn

try {
db.orders.deleteMany[ { "client" : "Crude Traders Inc." } ];
} catch [e] {
print [e];
}
6, thì ngoại lệ sau được ném:

Mẹo

Để xóa tất cả các tài liệu trong một bộ sưu tập, hãy chuyển trong một tài liệu trống [

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}
0].

Writeconcern

tài liệu

Không bắt buộc. Một tài liệu thể hiện mối quan tâm viết. Bỏ qua để sử dụng mối quan tâm ghi mặc định.

Không đặt rõ ràng mối quan tâm ghi cho hoạt động nếu chạy trong một giao dịch. Để sử dụng viết mối quan tâm với các giao dịch, xem giao dịch và viết mối quan tâm.

đối chiếu

tài liệu

Optional.

Không bắt buộc. Một tài liệu thể hiện mối quan tâm viết. Bỏ qua để sử dụng mối quan tâm ghi mặc định.

Không đặt rõ ràng mối quan tâm ghi cho hoạt động nếu chạy trong một giao dịch. Để sử dụng viết mối quan tâm với các giao dịch, xem giao dịch và viết mối quan tâm.

đối chiếu

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}

Chỉ định đối chiếu để sử dụng cho hoạt động.

Đối chiếu cho phép người dùng chỉ định các quy tắc cụ thể về ngôn ngữ để so sánh chuỗi, chẳng hạn như các quy tắc cho Lettercase và Dấu nhấn.

Tùy chọn đối chiếu có cú pháp sau:

Khi chỉ định đối chiếu, trường

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}
1 là bắt buộc; Tất cả các trường đối chiếu khác là tùy chọn. Để biết mô tả của các trường, xem tài liệu đối chiếu.

Nếu đối chiếu không được xác định nhưng bộ sưu tập có một đối chiếu mặc định [xem

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}
2], thao tác sử dụng đối chiếu được chỉ định cho bộ sưu tập.

tài liệu

Không bắt buộc. Một tài liệu thể hiện mối quan tâm viết. Bỏ qua để sử dụng mối quan tâm ghi mặc định.query predicate.

Không đặt rõ ràng mối quan tâm ghi cho hoạt động nếu chạy trong một giao dịch. Để sử dụng viết mối quan tâm với các giao dịch, xem giao dịch và viết mối quan tâm.

đối chiếu

Chỉ định đối chiếu để sử dụng cho hoạt động.Specify

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}
3 for Delete Operations.

Đối chiếu cho phép người dùng chỉ định các quy tắc cụ thể về ngôn ngữ để so sánh chuỗi, chẳng hạn như các quy tắc cho Lettercase và Dấu nhấn.

Returns:
Tùy chọn đối chiếu có cú pháp sau:
  • Khi chỉ định đối chiếu, trường
    collation: {
    locale: ,
    caseLevel: ,
    caseFirst: ,
    strength: ,
    numericOrdering: ,
    alternate: ,
    maxVariable: ,
    backwards:
    }
    1 là bắt buộc; Tất cả các trường đối chiếu khác là tùy chọn. Để biết mô tả của các trường, xem tài liệu đối chiếu.
  • Nếu đối chiếu không được xác định nhưng bộ sưu tập có một đối chiếu mặc định [xem

    collation: {
    locale: ,
    caseLevel: ,
    caseFirst: ,
    strength: ,
    numericOrdering: ,
    alternate: ,
    maxVariable: ,
    backwards:
    }
    2], thao tác sử dụng đối chiếu được chỉ định cho bộ sưu tập.

Nếu không có đối chiếu được chỉ định cho bộ sưu tập hoặc cho các hoạt động, MongoDB sử dụng so sánh nhị phân đơn giản được sử dụng trong các phiên bản trước để so sánh chuỗi. throws a

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}
9 exception if used on a capped collection. To remove all documents from a capped collection, use
{
_id: ObjectId["563237a41a4d68582c2509da"],
stock: "Brent Crude Futures",
qty: 250,
type: "buy-limit",
limit: 48.90,
creationts: ISODate["2015-11-01T12:30:15Z"],
expiryts: ISODate["2015-11-01T12:35:15Z"],
client: "Crude Traders Inc."
}
0

Bạn không thể chỉ định nhiều đối chiếu cho một hoạt động. Ví dụ: bạn không thể chỉ định các đối chiếu khác nhau trên mỗi trường hoặc nếu thực hiện tìm thấy với một loại, bạn không thể sử dụng một đối chiếu cho tìm và một đối với loại khác. throws a

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}
9 exception if used on a time series collection. To remove all documents from a time series collection, use
{
_id: ObjectId["563237a41a4d68582c2509da"],
stock: "Brent Crude Futures",
qty: 250,
type: "buy-limit",
limit: 48.90,
creationts: ISODate["2015-11-01T12:30:15Z"],
expiryts: ISODate["2015-11-01T12:35:15Z"],
client: "Crude Traders Inc."
}
0

dấu

Không bắt buộc. Một tài liệu hoặc chuỗi chỉ định chỉ mục để sử dụng để hỗ trợ vị từ truy vấn.

Tùy chọn có thể lấy một tài liệu đặc tả chỉ mục hoặc chuỗi tên chỉ mục. can be used inside multi-document transactions.

Không đặt rõ ràng mối quan tâm ghi cho hoạt động nếu chạy trong một giao dịch. Để sử dụng viết mối quan tâm với các giao dịch, xem giao dịch và viết mối quan tâm.

đối chiếu

Chỉ định đối chiếu để sử dụng cho hoạt động.

Đối chiếu cho phép người dùng chỉ định các quy tắc cụ thể về ngôn ngữ để so sánh chuỗi, chẳng hạn như các quy tắc cho Lettercase và Dấu nhấn.

Tùy chọn đối chiếu có cú pháp sau: deletes documents one at a time. If the primary node fails during a

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
7 operation, documents that were not yet deleted from secondary nodes are not deleted from the collection.

Khi chỉ định đối chiếu, trường

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}
1 là bắt buộc; Tất cả các trường đối chiếu khác là tùy chọn. Để biết mô tả của các trường, xem tài liệu đối chiếu.

{
_id: ObjectId["563237a41a4d68582c2509da"],
stock: "Brent Crude Futures",
qty: 250,
type: "buy-limit",
limit: 48.90,
creationts: ISODate["2015-11-01T12:30:15Z"],
expiryts: ISODate["2015-11-01T12:35:15Z"],
client: "Crude Traders Inc."
}

Nếu đối chiếu không được xác định nhưng bộ sưu tập có một đối chiếu mặc định [xem

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}
2], thao tác sử dụng đối chiếu được chỉ định cho bộ sưu tập.

try {
db.orders.deleteMany[ { "client" : "Crude Traders Inc." } ];
} catch [e] {
print [e];
}

Nếu không có đối chiếu được chỉ định cho bộ sưu tập hoặc cho các hoạt động, MongoDB sử dụng so sánh nhị phân đơn giản được sử dụng trong các phiên bản trước để so sánh chuỗi.

{ "acknowledged" : true, "deletedCount" : 10 }

Bạn không thể chỉ định nhiều đối chiếu cho một hoạt động. Ví dụ: bạn không thể chỉ định các đối chiếu khác nhau trên mỗi trường hoặc nếu thực hiện tìm thấy với một loại, bạn không thể sử dụng một đối chiếu cho tìm và một đối với loại khác.

try {
db.orders.deleteMany[ { "stock" : "Brent Crude Futures", "limit" : { $gt : 48.88 } } ];
} catch [e] {
print [e];
}

Nếu không có đối chiếu được chỉ định cho bộ sưu tập hoặc cho các hoạt động, MongoDB sử dụng so sánh nhị phân đơn giản được sử dụng trong các phiên bản trước để so sánh chuỗi.

{ "acknowledged" : true, "deletedCount" : 8 }

Bạn không thể chỉ định nhiều đối chiếu cho một hoạt động. Ví dụ: bạn không thể chỉ định các đối chiếu khác nhau trên mỗi trường hoặc nếu thực hiện tìm thấy với một loại, bạn không thể sử dụng một đối chiếu cho tìm và một đối với loại khác.

try {
db.orders.deleteMany[
{ "client" : "Crude Traders Inc." },
{ w : "majority", wtimeout : 100 }
];
} catch [e] {
print [e];
}

dấu

WriteConcernError[{
"code" : 64,
"errmsg" : "waiting for replication timed out",
"errInfo" : {
"wtimeout" : true,
"writeConcern" : { // Added in MongoDB 4.4
"w" : "majority",
"wtimeout" : 100,
"provenance" : "getLastErrorDefaults"
}
}
}]

Không bắt buộc. Một tài liệu hoặc chuỗi chỉ định chỉ mục để sử dụng để hỗ trợ vị từ truy vấn.

Tùy chọn có thể lấy một tài liệu đặc tả chỉ mục hoặc chuỗi tên chỉ mục.

Không đặt rõ ràng mối quan tâm ghi cho hoạt động nếu chạy trong một giao dịch. Để sử dụng viết mối quan tâm với các giao dịch, xem giao dịch và viết mối quan tâm.

đối chiếu

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
0

Chỉ định đối chiếu để sử dụng cho hoạt động.

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
1

Đối chiếu cho phép người dùng chỉ định các quy tắc cụ thể về ngôn ngữ để so sánh chuỗi, chẳng hạn như các quy tắc cho Lettercase và Dấu nhấn.

Tùy chọn đối chiếu có cú pháp sau:

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
8, create a

{ "acknowledged" : true, "deletedCount" : 10 }

1 collection with the following documents:

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
2

Khi chỉ định đối chiếu, trường

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}
1 là bắt buộc; Tất cả các trường đối chiếu khác là tùy chọn. Để biết mô tả của các trường, xem tài liệu đối chiếu.

Nếu đối chiếu không được xác định nhưng bộ sưu tập có một đối chiếu mặc định [xem

collation: {
locale: ,
caseLevel: ,
caseFirst: ,
strength: ,
numericOrdering: ,
alternate: ,
maxVariable: ,
backwards:
}
2], thao tác sử dụng đối chiếu được chỉ định cho bộ sưu tập.

Nếu không có đối chiếu được chỉ định cho bộ sưu tập hoặc cho các hoạt động, MongoDB sử dụng so sánh nhị phân đơn giản được sử dụng trong các phiên bản trước để so sánh chuỗi.

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
4

Bạn không thể chỉ định nhiều đối chiếu cho một hoạt động. Ví dụ: bạn không thể chỉ định các đối chiếu khác nhau trên mỗi trường hoặc nếu thực hiện tìm thấy với một loại, bạn không thể sử dụng một đối chiếu cho tìm và một đối với loại khác.

đối chiếu

Chỉ định đối chiếu để sử dụng cho hoạt động.

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
5

Đối chiếu cho phép người dùng chỉ định các quy tắc cụ thể về ngôn ngữ để so sánh chuỗi, chẳng hạn như các quy tắc cho Lettercase và Dấu nhấn.

db.collection.deleteMany[
,
{
writeConcern: ,
collation:
}
]
6

Trường

{ "acknowledged" : true, "deletedCount" : 10 }

4 trong đầu ra

{ "acknowledged" : true, "deletedCount" : 10 }

3 cho biết số lượng hoạt động sử dụng chỉ mục.

Làm cách nào để xóa nhiều dữ liệu trong MongoDB?

Shell MongoDB cung cấp các phương pháp sau để xóa tài liệu khỏi bộ sưu tập:..
Để xóa nhiều tài liệu, sử dụng DB.thu thập.Deletemany [].
Để xóa một tài liệu duy nhất, sử dụng DB.thu thập.Xóa [].

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 tài liệu trong một bộ sưu tập, hãy truyền một tài liệu trống [{}].Không bắt buộc.Để giới hạn việc xóa chỉ một tài liệu, được đặt thành true.pass an empty document [ {} ]. Optional. To limit the deletion to just one document, set to true .

Chúng ta có thể xóa tất cả các hồ sơ trong MongoDB không?

Để xóa tất cả các tài liệu trong một bộ sưu tập, hãy truyền một tài liệu trống [{}].Để giới hạn việc xóa chỉ một tài liệu, được đặt thành true.Bỏ qua để sử dụng giá trị mặc định của Sai và xóa tất cả các tài liệu phù hợp với tiêu chí xóa.. To limit the deletion to just one document, set to true. Omit to use the default value of false and delete all documents matching the deletion criteria.

Lệnh nào sẽ loại bỏ tất cả các tài liệu trong một bộ sưu tập với độ tuổi trường được đặt thành 10?

Xóa [] phương thức xóa [] Xóa các 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. The remove[] method removes documents from the database. It can remove one or all documents from the collection that matches the given query expression.

Bài Viết Liên Quan

Chủ Đề