Rumah >pangkalan data >tutorial mysql >mysql bagaimana untuk mengemas kini medan json

mysql bagaimana untuk mengemas kini medan json

William Shakespeare
William Shakespeareasal
2024-12-25 11:37:14840semak imbas

Bagaimana untuk menggunakan MySQL untuk mengemas kini medan JSON?

Untuk mengemas kini medan JSON dalam MySQL, gunakan fungsi JSON_SET(). Fungsi ini mengambil dua argumen: laluan JSON (menentukan lokasi medan untuk dikemas kini) dan nilai baharu.

Sebagai contoh, untuk mengemas kini medan nama objek pengguna dalam dokumen JSON berikut:

<code>{
  "user": {
    "name": "John Doe",
    "age": 30
  }
}</code>

Anda akan menggunakan pertanyaan berikut:

<code>UPDATE table_name SET json_field = JSON_SET(json_field, '$.user.name', 'Jane Doe')
WHERE ...;</code>

Bagaimanakah saya boleh mengemas kini berbilang nilai dengan cekap dalam Medan JSON dalam MySQL?

Untuk mengemas kini berbilang nilai dengan cekap dalam medan JSON dalam MySQL, gunakan fungsi JSON_REPLACE(). Fungsi ini mengambil dua argumen: laluan JSON (menentukan lokasi medan untuk dikemas kini) dan nilai baharu. Nilai baharu boleh menjadi objek JSON, tatasusunan atau skalar.

Sebagai contoh, untuk mengemas kini nama dan medan umur objek pengguna dalam contoh sebelumnya, anda akan menggunakan pertanyaan berikut:

<code>UPDATE table_name SET json_field = JSON_REPLACE(json_field, '$.user', JSON_OBJECT('name', 'Jane Doe', 'age', 31))
WHERE ...;</code>

Apakah sintaks untuk mengemas kini medan JSON bersarang dalam MySQL?

Untuk mengemas kini medan JSON bersarang Medan JSON dalam MySQL, gunakan fungsi JSON_SET() dengan laluan JSON bersarang. Laluan JSON bersarang ialah laluan JSON yang mengandungi titik (.) untuk memisahkan nama medan bersarang.

Sebagai contoh, untuk mengemas kini medan jalan objek alamat dalam objek pengguna dalam contoh sebelumnya, anda akan gunakan pertanyaan berikut:

<code>UPDATE table_name SET json_field = JSON_SET(json_field, '$.user.address.street', '123 Main Street')
WHERE ...;</code>

Atas ialah kandungan terperinci mysql bagaimana untuk mengemas kini medan json. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn