JSON

JSONB_SET

PostgreSQLPostgreSQL

Mengupdate atau menambahkan nilai dalam JSONB pada path yang ditentukan. Lebih fleksibel dari operator ||, karena bisa mengakses nested path.

Tipe hasil: jsonbDiperbarui: 13 Jun 2026

Syntax

SQL
JSONB_SET(target, path, new_value [, create_if_missing])

Parameter

targetjsonbwajib

JSONB yang akan dimodifikasi

pathtext[]wajib

Path ke lokasi yang akan diupdate

new_valuejsonbwajib

Nilai baru yang akan diset

create_missingbooleanopsional

True untuk membuat path baru jika tidak ada (default true)

Contoh Penggunaan

Update Nilai

SQL
1SELECT JSONB_SET('{"name": "Budi", "age": 25}'::jsonb, '{age}', '30'::jsonb);

Mengupdate nilai age dari 25 ke 30.

Hasil
jsonb_set
{"age": 30, "name": "Budi"}

Update Nested Value

SQL
1SELECT JSONB_SET(
2 '{"user": {"name": "Budi", "role": "user"}}'::jsonb,
3 '{user, role}',
4 '"admin"'::jsonb
5);

Mengupdate nilai nested dalam JSONB object.

Pertanyaan Umum tentang JSONB_SET

Apa itu fungsi JSONB_SET di PostgreSQL?
Mengupdate atau menambahkan nilai dalam JSONB pada path yang ditentukan. Lebih fleksibel dari operator ||, karena bisa mengakses nested path. Di PostgreSQL, fungsi JSONB_SET termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan JSONB_SET di PostgreSQL?
Gunakan sintaks berikut: JSONB_SET(target, path, new_value [, create_if_missing]). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi JSONB_SET?
Fungsi JSONB_SET mengembalikan nilai bertipe jsonb. Pastikan tipe data hasil sudah sesuai dengan kebutuhan query atau formula kamu. Jika input mengandung nilai NULL, perilaku fungsi dapat berbeda — selalu periksa dokumentasi untuk memastikan hasilnya sesuai ekspektasi.
Apa saja parameter fungsi JSONB_SET?
Fungsi ini memiliki 3 parameter wajib dan 1 parameter opsional. Parameter yang digunakan: target (jsonb, wajib): JSONB yang akan dimodifikasi; path (text[], wajib): Path ke lokasi yang akan diupdate; new_value (jsonb, wajib): Nilai baru yang akan diset; create_missing (boolean, opsional): True untuk membuat path baru jika tidak ada (default true).

Fungsi Terkait

Ngulik Langsung

Sudah paham JSONB_SET? Latih langsung di browser

Latihan interaktif, langsung di browser.

Latihan Langsung →