PostgreSQL - UPDATE Query: Panduan Ramah untuk Pemula
Hai teman-teman yang bersemangat dalam dunia basis data! Hari ini, kita akan melompat ke dalam dunia yang menakjubkan PostgreSQL dan belajar tentang queri UPDATE. Jangan khawatir jika Anda masih baru dalam programming – saya akan memandu Anda langkah demi langkah, seperti yang saya lakukan untuk ribuan murid selama tahun-tahun mengajar saya. Jadi, ambil secangkir kopi (atau teh, jika itu yang Anda sukai), dan mari kita mulai!
Apa Itu Queri UPDATE?
Sebelum kita masuk ke hal yang membingungkan, mari kita mengerti apa yang dimaksud oleh queri UPDATE. Bayangkan Anda memiliki buku alamat digital (yang secara esensial adalah apa yang disebut tabel basis data). Sekarang, teman Anda pindah ke rumah baru. Anda tidak akan membuat entri baru untuk mereka, kan? Anda hanya akan memperbarui alamat mereka yang sudah ada. Itu tepat seperti apa yang dilakukan queri UPDATE di PostgreSQL – itu memodifikasi data yang sudah ada di tabel.
Sintaksis Queri UPDATE
Sekarang, mari kita lihat sintaksis dasar queri UPDATE di PostgreSQL:
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
mari kitauraikan ini:
-
UPDATE table_name
: Ini menentukan tabel mana yang ingin Anda perbarui. -
SET column1 = value1, column2 = value2, ...
: Ini adalah tempat Anda menentukan kolom mana yang ingin Anda ubah dan nilai baru apa yang hendak Anda tetapkan. -
WHERE condition
: Ini sangat penting! Itu menentukan baris mana yang akan diperbarui. Jika Anda mengabaikan ini, semua baris di tabel akan diperbarui!
Contoh-Contoh Queri UPDATE
Contoh 1: Update Dasar
Bayangkan kita memiliki tabel employees
dengan kolom id
, name
, dan salary
. Kita ingin memberikan peningkatan gaji 10% ke semua orang. Ini adalah cara kita melakukannya:
UPDATE employees
SET salary = salary * 1.1;
Query ini akan meningkatkan gaji semua orang sebesar 10%. Perhatikan bahwa kita tidak menggunakan klausa WHERE, jadi itu mempengaruhi semua baris.
Contoh 2: Update Dengan Kondisi
Sekarang, bayangkan kita hanya ingin memberikan peningkatan gaji kepada karyawan dengan ID kurang dari 1000:
UPDATE employees
SET salary = salary * 1.1
WHERE id < 1000;
Query ini hanya akan memperbarui gaji karyawan dengan ID kurang dari 1000.
Contoh 3: Update Banyak Kolom
kadang-kadang, Anda mungkin ingin memperbarui lebih dari satu kolom sekaligus. Bayangkan kita ingin memperbarui gaji dan judul pekerjaan untuk karyawan tertentu:
UPDATE employees
SET salary = 75000, job_title = 'Senior Developer'
WHERE id = 1234;
Query ini memperbarui gaji dan judul pekerjaan untuk karyawan dengan ID 1234.
Praktik dan Tips Terbaik
-
Selalu gunakan WHERE: kecuali Anda benar-benar ingin memperbarui setiap baris, selalu sertakan klausa WHERE. Saya pernah punya murid yang secara tak sengaja memberikan gaji CEO kepada semua orang di perusahaan!
-
Gunakan transaksi: Untuk pembaruan penting, cobalah menutup query Anda dalam transaksi. Ini memungkinkan Anda untuk membatalkan jika ada yang salah:
BEGIN;
UPDATE employees SET salary = salary * 2;
-- Ups! Kami tidak bermaksud untuk menggandakan gaji semua orang!
ROLLBACK;
- Uji dengan SELECT dahulu: Sebelum menjalankan UPDATE, cobalah klausa WHERE Anda dengan query SELECT untuk memastikan Anda menargetkan baris yang benar:
SELECT * FROM employees WHERE id < 1000;
-- Jika ini terlihat baik, maka jalankan:
UPDATE employees SET salary = salary * 1.1 WHERE id < 1000;
- Gunakan RETURNING: PostgreSQL memiliki fitur menarik yang memungkinkan Anda melihat apa yang diperbarui:
UPDATE employees
SET salary = salary * 1.1
WHERE id = 1234
RETURNING id, name, salary;
Ini akan menampilkan baris yang diperbarui, yang bisa sangat membantu untuk verifikasi.
Metode UPDATE Umum
Berikut adalah tabel metode UPDATE umum di PostgreSQL, ditampilkan dalam format Markdown:
Metode | Deskripsi | Contoh |
---|---|---|
Update Dasar | Memperbarui kolom yang ditentukan untuk semua baris atau yang memenuhi kondisi | UPDATE employees SET salary = 50000 WHERE department = 'IT' |
Update dengan perhitungan | Memperbarui kolom berdasarkan nilai saat ini | UPDATE products SET price = price * 1.1 |
Update dengan subquery | Menggunakan subquery untuk menentukan baris mana yang akan diperbarui atau nilai apa yang akan diatur | UPDATE orders SET status = 'shipped' WHERE id IN (SELECT order_id FROM shipments WHERE ship_date = CURRENT_DATE) |
Update dengan JOIN | Memperbarui berdasarkan data di tabel lain | UPDATE employees e SET salary = e.salary * 1.1 FROM departments d WHERE e.dept_id = d.id AND d.name = 'Sales' |
Update dengan CASE | Memungkinkan logika kondisional dalam pembaruan | UPDATE employees SET bonus = CASE WHEN sales > 10000 THEN 1000 ELSE 500 END |
Ingat, setiap metode ini memiliki kasus penggunaannya sendiri, dan seiring Anda merasa nyaman dengan PostgreSQL, Anda akan mengembangkan keadaan untuk menggunakan metode mana saja.
Kesimpulan
Dan begitu juga, teman-teman! Anda baru saja mengambil langkah pertama ke dalam dunia queri UPDATE di PostgreSQL. Ingat, dengan kekuatan yang besar datang tanggung jawab yang besar – selalu periksa klausa WHERE Anda sebelum menekan tombol eksekusi!
Praktiklah membuat basis data uji dan coba query ini sendiri. Sebelum Anda menyadari, Anda akan memperbarui data seperti seorang ahli!
Selamat menjalankan query, dan semoga basis data Anda selalu dalam keadaan baik!
Credits: Image by storyset