DELETE…..FROM….
Melanjutkan artikel saya sebelumnya penggunaan perintah UPDATE….FROM, yang
akan saya bicarakan sekarang adalah DELETE….FROM. Metode pemakaian sama saja,
bedanya UPDATE untuk merubah data dan DELETE untuk menghapus data. Perintah
DELETE yang akan saya bicarakan di sini sudah menggunakan DELETE tingkat lanjut
jadi bukan bukan perintah DELETE standard lagi.
Contoh perintah DELETE standard.
DELETE tb_a SET field1 = ‘xxxxx’, field2 = ‘xxxxx’ WHERE keyfield = value
Kasus 1 :
Kita mempunyai dua tabel seperti berikut :
tb_salesman
| kode_sales | nama_sales | golongan |
|---|---|---|
| 1001 | Budi |
A
|
| 1002 | Udin |
B
|
| 1003 | Ifan |
A
|
| 1004 | Dino |
C
|
| 1005 | Gito |
B
|
| 1006 | Danu |
A
|
| 1007 | Gita |
A
|
tb_transaksi
| no_transak | nilai | kode_sales | bonus |
|---|---|---|---|
|
F1001
|
2.000.000
|
1001
|
50.000
|
|
F1002
|
1.000.000
|
1003
|
50.000
|
|
F1003
|
3.000.000
|
1002
|
50.000
|
|
F1004
|
6.000.000
|
1007
|
50.000
|
|
F1005
|
7.000.000
|
1004
|
50.000
|
|
F1006
|
3.000.000
|
1005
|
50.000
|
|
F1007
|
4.000.000
|
1006
|
50.000
|
permasalahannya yang muncul adalah “Bagaimana cara menghapus transaksi-transaksi
di tb_transaksi yang mempunyai sales golongan A”
Langkah pertama :
Perintah DELETE yang akan kita gunakan harus hati-hati, karena kalau tidak
akan terhapus data-data yang diperlukan. Untuk itu saya sarankan lebih baik
menggunakan perintah SELECT terlebih dahulu agar yang akan dihapus benar-benar
data yang ingin kita hapus. Perintahnya begini :
SELECT* FROM tb_transaksi a INNER JOIN tb_salesman b ON a.kode_sales =b.kode_sales
WHERE b.golongan = ‘A’
Jalankan perintah tersebut di Query Analyzer, apabila hasil yang muncul merupakan
kumpulan data-data transaksi yg akan dihapus, berarti perintah Anda sudah benar
dan tidak mungkin meleset. Jika datanya banyak sekali, ambil saja dua atau tiga
records sebagai sample pembanding.
Langkah kedua :
Langkah ini merupakan proses penghapusan :
DELETE tb_transaksi FROM tb_transaksi a INNER JOIN tb_salesman b ON a.kode_sales
=b.kode_sales WHERE b.golongan = ‘A’
Eksekusi perintah ini, maka tb_transaksi akan terhapus sesuai dengan daftar
transaksi yang ada pada Langkah pertama tadi.
Sekian dulu tips dan trik yg ringkas ini mudah-mudahan bermanfaat bagi yang mendalami bahasa SQL.
Artikel lainnya
- Dasar-Dasar SQL 1
- Dasar-Dasar SQL 2
- Dasar-Dasar SQL 3
- Dasar-Dasar SQL 4
- Konsep Himpunan Dalam SQL
- Instalasi MySQL
- Koneksi Delphi ke SQL Server
- Full Join dan Cross Join dalam SQL
- Query Dalam Query
- Perintah EXISTS dalam SQL
- Perbedaan Perintah UNION dan UNION ALL dalam SQL
- Cara Membuat Store Procedure di SQL Server
- Perintah LIKE dalam SQL
- Create Trigger dalam SQL
- Penggunaan Perintah CASE Dalam SQL
- INSERT…… Perintah Lanjutan SQL
- update-from
- Delete….From…
Filed under: SQL, Tips & Tricks, Tutorial , Dasar-dasar SQL, database, delete, select, SQL, SQL Server, tips dan trik




Komentar Terakhir