Bagikan melalui


hapus

Perintah delete digunakan untuk menghapus dokumen dari koleksi. Satu dokumen atau beberapa dokumen dapat dihapus berdasarkan filter kueri tertentu.

Syntax

Sintaks dasar untuk delete perintah adalah sebagai berikut:

db.collection.deleteOne(
   <filter>,
   <options>
)

db.collection.deleteMany(
   <filter>,
   <options>
)

Parameter-parameternya

Pengaturan Description
<filter> Dokumen yang menentukan kriteria penghapusan. Hanya dokumen yang cocok dengan filter yang dihapus
options Optional. Dokumen yang menentukan opsi untuk operasi penghapusan. Opsi umum termasuk writeConcern dan collation

Contoh

Pertimbangkan dokumen sampel ini dari koleksi penyimpanan di database StoreData.

{
    "_id": "0fcc0bf0-ed18-4ab8-b558-9848e18058f4",
    "name": "First Up Consultants | Beverage Shop - Satterfieldmouth",
    "location": {
        "lat": -89.2384,
        "lon": -46.4012
    },
    "staff": {
        "totalStaff": {
            "fullTime": 8,
            "partTime": 20
        }
    },
    "sales": {
        "totalSales": 75670,
        "salesByCategory": [
            {
                "categoryName": "Wine Accessories",
                "totalSales": 34440
            },
            {
                "categoryName": "Bitters",
                "totalSales": 39496
            },
            {
                "categoryName": "Rum",
                "totalSales": 1734
            }
        ]
    },
    "promotionEvents": [
        {
            "eventName": "Unbeatable Bargain Bash",
            "promotionalDates": {
                "startDate": {
                    "Year": 2024,
                    "Month": 6,
                    "Day": 23
                },
                "endDate": {
                    "Year": 2024,
                    "Month": 7,
                    "Day": 2
                }
            },
            "discounts": [
                {
                    "categoryName": "Whiskey",
                    "discountPercentage": 7
                },
                {
                    "categoryName": "Bitters",
                    "discountPercentage": 15
                },
                {
                    "categoryName": "Brandy",
                    "discountPercentage": 8
                },
                {
                    "categoryName": "Sports Drinks",
                    "discountPercentage": 22
                },
                {
                    "categoryName": "Vodka",
                    "discountPercentage": 19
                }
            ]
        },
        {
            "eventName": "Steal of a Deal Days",
            "promotionalDates": {
                "startDate": {
                    "Year": 2024,
                    "Month": 9,
                    "Day": 21
                },
                "endDate": {
                    "Year": 2024,
                    "Month": 9,
                    "Day": 29
                }
            },
            "discounts": [
                {
                    "categoryName": "Organic Wine",
                    "discountPercentage": 19
                },
                {
                    "categoryName": "White Wine",
                    "discountPercentage": 20
                },
                {
                    "categoryName": "Sparkling Wine",
                    "discountPercentage": 19
                },
                {
                    "categoryName": "Whiskey",
                    "discountPercentage": 17
                },
                {
                    "categoryName": "Vodka",
                    "discountPercentage": 23
                }
            ]
        }
    ]
}

Contoh 1 - Menghapus semua dokumen dalam koleksi

db.stores.deleteMany({})

Contoh 2 - Menghapus dokumen yang cocok dengan filter kueri tertentu

db.stores.deleteOne({"_id": "68471088-4d45-4164-ae58-a9428d12f310"})

Contoh 3 - Menghapus semua dokumen yang cocok dengan filter kueri tertentu

db.stores.deleteMany({"promotionEvents.discounts.discountPercentage": 21}, {"limit": 0})

Contoh 3 - Hapus hanya satu dari banyak dokumen yang cocok dengan filter kueri tertentu

db.stores.deleteMany({"promotionEvents.discounts.discountPercentage": 21}, {"limit": 1})