Lewati ke konten utama

JSON di MySQL

MySQL mendukung tipe data JSON, yang memungkinkan penyimpanan dan manipulasi data dalam format JSON secara efisien. JSON sering digunakan untuk menyimpan data semi-terstruktur dalam aplikasi modern.

Membuat Kolom JSON

Untuk membuat tabel dengan kolom JSON, gunakan tipe data JSON seperti contoh berikut:

CREATE TABLE pengguna (
id INT AUTO_INCREMENT PRIMARY KEY,
data JSON NOT NULL
);

Menyisipkan Data JSON

Gunakan pernyataan INSERT untuk menyimpan data dalam kolom JSON:

INSERT INTO pengguna (data) VALUES ('{"nama": "Ali", "umur": 25}');

Mengakses Data JSON

Gunakan operator ->> untuk mengambil nilai dari objek JSON:

SELECT data->>'$.nama' AS nama_pengguna FROM pengguna;

Atau gunakan fungsi JSON_EXTRACT:

SELECT JSON_EXTRACT(data, '$.umur') AS umur_pengguna FROM pengguna;

Memperbarui Data JSON

Untuk memperbarui nilai dalam JSON, gunakan JSON_SET:

UPDATE pengguna SET data = JSON_SET(data, '$.umur', 26) WHERE id = 1;

Menghapus Elemen JSON

Gunakan JSON_REMOVE untuk menghapus elemen dalam JSON:

UPDATE pengguna SET data = JSON_REMOVE(data, '$.umur') WHERE id = 1;

Indeks pada Kolom JSON

Untuk meningkatkan kinerja pencarian pada kolom JSON, buat generated column dan tambahkan indeks:

ALTER TABLE pengguna ADD COLUMN nama VARCHAR(255) AS (data->>'$.nama') STORED;
CREATE INDEX idx_nama ON pengguna (nama);

Kesimpulan

Tipe data JSON di MySQL sangat berguna untuk menyimpan data fleksibel dalam aplikasi modern. Dengan berbagai fungsi bawaan MySQL, manipulasi data JSON menjadi lebih mudah dan efisien.