MySQL HAPUS Kueri: Cara Menghapus Baris dari Tabel
Apa itu Permintaan DELETE?
MySQL Delete perintah digunakan untuk menghapus baris yang tidak lagi diperlukan dari tabel database. Ini menghapus seluruh baris dari tabel dan mengembalikan jumlah baris yang dihapus. Perintah hapus berguna untuk menghapus data sementara atau usang dari database Anda.
Kueri Hapus di MySQL dapat menghapus lebih dari satu baris dari tabel dalam satu kueri. Hal ini terbukti menguntungkan saat menghapus sejumlah besar baris dari tabel basis data.
Setelah baris Hapus masuk MySQL baris telah dihapus, baris tersebut tidak dapat dipulihkan. Oleh karena itu, sangat disarankan untuk membuat cadangan basis data sebelum menghapus data apa pun dari basis data. Ini dapat memungkinkan Anda untuk memulihkan basis data dan melihat data tersebut nanti jika diperlukan.
Cara Menghapus baris di MySQL
Untuk menghapus baris di MySQL, pernyataan DELETE FROM digunakan:
DELETE FROM `table_name` [WHERE condition];
SINI
- HAPUS DARI `nama_tabel` memberitahu MySQL server untuk menghapus baris dari tabel ..
- [Kondisi WHERE] bersifat opsional dan digunakan untuk memasang filter yang membatasi jumlah baris yang dipengaruhi oleh sintaks DELETE MySQL kueri baris.
Jika klausa WHERE tidak digunakan di MySQL HAPUS kueri, maka semua baris dalam tabel tertentu akan dihapus.
Contoh MySQL Hapus Kueri
Sebelum kita masuk ke diskusi lebih rinci tentang pernyataan SQL DELETE, mari masukkan beberapa contoh data ke dalam tabel film untuk digunakan.
INSERT INTO `movies` (`title`, `director`, `year_released`, `category_id`) VALUES ('The Great Dictator', 'Chalie Chaplie', 1920, 7); INSERT INTO `movies` (`title`, `director`, `category_id`) VALUES ('sample movie', 'Anonymous', 8); INSERT INTO movies (`title`, `director`, `year_released`, `category_id`) VALUES ('movie 3', 'John Brown', 1920, 8);
Mengeksekusi skrip di atas menambahkan tiga (3) film ke dalam tabel film. Sebelum kita melanjutkan pelajaran kita lebih jauh, mari kita lihat semua filmnya di meja kita. Skrip yang ditunjukkan di bawah melakukan hal itu.
SELECT * FROM `movies`;
Menjalankan skrip di atas akan memberi kita hasil sebagai berikut.
movie_id | title | director | year_released | category_id |
---|---|---|---|---|
1 | Pirates of the Caribean 4 | Rob Marshall | 2011 | 1 |
2 | Forgetting Sarah Marshal | Nicholas Stoller | 2008 | 2 |
3 | X-Men | NULL | 2008 | NULL |
4 | Code Name Black | Edgar Jimz | 2010 | NULL |
5 | Daddy's Little Girls | NULL | 2007 | 8 |
6 | Angels and Demons | NULL | 2007 | 6 |
7 | Davinci Code | NULL | 2007 | 6 |
9 | Honey mooners | John Schultz | 2005 | 8 |
16 | 67% Guilty | NULL | 2012 | NULL |
18 | The Great Dictator | Chalie Chaplie | 1920 | 7 |
19 | sample movie | Anonymous | NULL | 8 |
20 | movie 3 | John Brown | 1920 | 8 |
Misalkan perpustakaan video Myflix tidak lagi ingin menyewakan “The Great Dictator” kepada anggotanya dan mereka ingin menghapusnya dari database. ID filmnya adalah 18, kita dapat menggunakan skrip di bawah ini untuk menghapus baris dari tabel MySQL contoh.
DELETE FROM `movies` WHERE `movie_id` = 18;
Menjalankan skrip di atas dalam MySQL Meja kerja melawan Myflix menghapus film dengan id 18 dari tabel database.
Mari kita lihat status tabel film saat ini.
SELECT * FROM `movies`;
movie_id | title | director | year_released | category_id |
---|---|---|---|---|
1 | Pirates of the Caribean 4 | Rob Marshall | 2011 | 1 |
2 | Forgetting Sarah Marshal | Nicholas Stoller | 2008 | 2 |
3 | X-Men | NULL | 2008 | NULL |
4 | Code Name Black | Edgar Jimz | 2010 | NULL |
5 | Daddy's Little Girls | NULL | 2007 | 8 |
6 | Angels and Demons | NULL | 2007 | 6 |
7 | Davinci Code | NULL | 2007 | 6 |
9 | Honey mooners | John Schultz | 2005 | 8 |
16 | 67% Guilty | NULL | 2012 | NULL |
19 | sample movie | Anonymous | NULL | 8 |
20 | movie 3 | John Brown | 1920 | 8 |
CATATAN:
- film dengan id 18 belum dikembalikan dalam kumpulan hasil kueri.
- Anda tidak dapat menghapus satu kolom pun untuk sebuah tabel. Anda dapat menghapus seluruh baris.
Katakanlah kita mempunyai daftar film yang ingin kita hapus. Kita dapat menggunakan klausa WHERE bersama dengan IN.
DELETE FROM `movies` WHERE `movie_id` IN (20,21);
Menjalankan skrip di atas akan menghapus film dengan ID 20 dan 21 dari tabel film kami.
Ringkasan
- Perintah Hapus di MySQL, digunakan untuk menghapus data yang tidak diperlukan lagi dari tabel.
- “Klausa WHERE” digunakan untuk membatasi jumlah baris yang terpengaruh oleh kueri DELETE MySQL perintah.
- Setelah data terhapus, data tersebut tidak dapat dipulihkan, oleh karena itu sangat disarankan untuk membuat cadangan sebelum menghapus data.