PostgreSQL - UPDATE Query: A Friendly Guide for Beginners
Hai there, penggemar basis data yang bersemangat! Hari ini, kita akan melompat ke dunia yang menakjubkan PostgreSQL dan belajar tentang query UPDATE. Jangan khawatir jika Anda baru dalam programming - saya akan mengajarkan Anda langkah demi langkah, seperti yang saya lakukan bagi ribuan murid selama tahun-tahun mengajar saya. Jadi, ambil secangkir kopi (atau teh, jika itu yang Anda suka), dan mari kita mulai!
Apa Itu Query UPDATE?
Sebelum kita masuk ke detailnya, mari kita pahami apa itu query 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 query UPDATE lakukan di PostgreSQL - itu memodifikasi data yang sudah ada di tabel.
Sintaks Query UPDATE
Sekarang, mari kita lihat sintaks dasar dari query UPDATE di PostgreSQL:
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
mari kitauraikan ini:
-
UPDATE table_name
: Ini menentukan tabel mana yang Anda ingin memperbarui. -
SET column1 = value1, column2 = value2, ...
: Ini adalah tempat Anda menentukan kolom mana yang akan diubah dan nilai baru apa yang Anda ingin tetapkan. -
WHERE condition
: Ini sangat penting! Itu menentukan baris mana yang akan diperbarui. Jika Anda menghapus ini, semua baris di tabel akan diperbarui!
Contoh Query UPDATE
Contoh 1: Update Dasar
Asumsikan kita memiliki tabel employees
dengan kolom id
, name
, dan salary
. Kita ingin memberikan peningkatan gaji 10% kepada 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 Syarat
Sekarang, mari kita katakan bahwa 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 Beberapa Kolom
kadang-kadang, Anda mungkin ingin memperbarui lebih dari satu kolom sekaligus. Asumsikan 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 bermaksud untuk memperbarui setiap baris, selalu sertakan klausa WHERE. Saya pernah memiliki murid yang secara tidak sengaja memberikan gaji CEO kepada semua orang di perusahaan!
-
Gunakan transaksi: Untuk pembaruan yang penting, cobalah untuk memasukkan query Anda dalam transaksi. Ini memungkinkan Anda untuk mengembalikan jika ada kesalahan:
BEGIN;
UPDATE employees SET salary = salary * 2;
-- Oeps! Kami tidak bermaksud untuk menggandakan gaji semua orang!
ROLLBACK;
- Uji dengan SELECT terlebih 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 menunjukkan 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 |
---|---|---|
Basic UPDATE | Memperbarui kolom yang ditentukan untuk semua baris atau yang memenuhi syarat | 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 ditetapkan | 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 bersyarat dalam pembaruan | UPDATE employees SET bonus = CASE WHEN sales > 10000 THEN 1000 ELSE 500 END |
Ingat, setiap metode ini memiliki kasus penggunaannya sendiri, dan saat Anda merasa nyaman dengan PostgreSQL, Anda akan mengembangkan intuisi tentang kapan menggunakan metode mana.
Kesimpulan
Dan itu dia, teman-teman! Anda telah mengambil langkah pertama ke dunia query UPDATE di PostgreSQL. Ingat, dengan kekuatan besar datang tanggung jawab besar - selalu periksa klausa WHERE sebelum menekan tombol eksekusi!
Praktik membuat sempurna, jadi jangan khawatir untuk membuat basis data uji dan mencoba query ini sendiri. Sebelum Anda mengetahuinya, Anda akan memperbarui data seperti seorang ahli!
Selamat mengeksekusi query, dan semoga basis data Anda selalu dalam kondisi sempurna!
Credits: Image by storyset