JSON

JSON_EXTRACT

DuckDBDuckDB

Mengekstrak nilai dari JSON berdasarkan path. DuckDB mendukung operator -> dan ->> seperti PostgreSQL.

Tipe hasil: JSON (untuk ->) atau VARCHAR (untuk ->>)Diperbarui: 6 Jan 2026

Syntax

SQL
JSON_EXTRACT(json, path) | json -> path | json ->> path

Parameter

jsonJSON/VARCHARwajib

Data JSON atau string JSON yang akan diekstrak

pathVARCHARwajib

Path ke nilai yang diinginkan (contoh: '$.name' atau '/name')

Contoh Penggunaan

Ekstrak Field Sederhana

SQL
1SELECT JSON_EXTRACT('{"name": "John", "age": 30}', '$.name');

Mengekstrak field 'name' dari JSON.

Hasil
"John"

Menggunakan Operator ->

SQL
1SELECT
2 data -> '$.name' as name_json,
3 data ->> '$.name' as name_text
4FROM json_table;

-> untuk JSON, ->> untuk string.

Hasil
name_jsonname_text
"John"John

Ekstrak Nested Object

SQL
1SELECT
2 data ->> '$.user.name' as user_name,
3 data ->> '$.user.address.city' as city
4FROM users;

Mengakses nested object dengan dot notation.

Ekstrak dari Array

SQL
1SELECT
2 data ->> '$.items[0].name' as first_item,
3 data ->> '$.items[1].price' as second_price
4FROM orders;

Mengakses element array berdasarkan indeks.