Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk menggunakan format JSON dalam MySQL untuk menyimpan dan bertanya data?

Bagaimana untuk menggunakan format JSON dalam MySQL untuk menyimpan dan bertanya data?

PHPz
PHPzasal
2023-07-30 21:37:222582semak imbas

Bagaimana untuk menggunakan format JSON untuk menyimpan dan bertanya data dalam MySQL?

Dalam pembangunan aplikasi moden, menggunakan format JSON untuk menyimpan dan membuat pertanyaan data telah menjadi amalan biasa. JSON (JavaScript Object Notation) ialah format pertukaran data ringan yang digunakan secara meluas untuk penghantaran data bahagian hadapan dan belakang, fail konfigurasi, pengelogan, dsb. MySQL telah memperkenalkan sokongan untuk medan JSON bermula dari versi 5.7, membolehkan kami menyimpan, bertanya dan mengendalikan data JSON secara langsung dalam MySQL.

Artikel ini akan memperkenalkan cara menggunakan format JSON untuk menyimpan dan membuat pertanyaan data dalam MySQL, dan menyediakan beberapa contoh kod praktikal.

1. Buat jadual dan masukkan data

Pertama, kita perlu mencipta jadual yang mengandungi medan JSON. Katakan kami ingin menyimpan butiran pengguna, yang mengandungi maklumat seperti nama, umur dan butiran hubungan. Kita boleh mencipta jadual bernama "pengguna" menggunakan pernyataan SQL berikut:

CREATE TABLE users (
  id INT PRIMARY KEY AUTO_INCREMENT,
  info JSON
);

Seterusnya, kita boleh menggunakan pernyataan INSERT untuk memasukkan beberapa data pengguna ke dalam jadual. Dalam pernyataan INSERT, kita boleh menggunakan fungsi JSON_OBJECT untuk membina objek JSON dan kemudian menyimpannya ke dalam medan JSON. Berikut ialah contoh:

INSERT INTO users (info) VALUES (
  JSON_OBJECT('name', 'John', 'age', 25, 'contact', JSON_OBJECT('email', 'john@example.com', 'phone', '1234567890'))
);

2. Pertanyaan data JSON

Dalam MySQL, kita boleh menggunakan beberapa fungsi untuk menanyakan data JSON. Berikut ialah beberapa fungsi yang biasa digunakan dan penggunaannya:

  1. Fungsi JSON_EXTRACT: digunakan untuk mengekstrak atribut atau nilai tertentu daripada medan JSON. Ia menerima dua parameter, parameter pertama ialah medan JSON, dan parameter kedua ialah laluan pengekstrakan. Berikut ialah contoh:
SELECT JSON_EXTRACT(info, '$.name') AS name FROM users;
  1. JSON_SEARCH fungsi: digunakan untuk mencari kunci atau nilai yang sepadan dalam medan JSON dan mengembalikan laluannya. Ia menerima tiga parameter, parameter pertama ialah medan JSON, parameter kedua ialah nilai yang akan dicari, dan parameter ketiga ialah laluan untuk memulakan carian. Berikut ialah contoh:
SELECT JSON_SEARCH(info, 'one', 'John', NULL, '$.name') AS name_path FROM users;
  1. JSON_CONTAINS fungsi: digunakan untuk menyemak sama ada medan JSON mengandungi kunci atau nilai tertentu. Ia menerima dua parameter, parameter pertama ialah medan JSON dan parameter kedua ialah kunci atau nilai untuk diperiksa. Berikut ialah contoh:
SELECT * FROM users WHERE JSON_CONTAINS(info, 'John', '$.name');

3. Kemas kini data JSON

Kita boleh menggunakan fungsi JSON_SET untuk mengemas kini nilai dalam medan JSON. Fungsi JSON_SET menerima tiga atau lebih parameter Dua parameter pertama ialah medan JSON yang akan dikemas kini dan laluan yang akan dikemas kini Parameter berikut adalah kunci untuk ditetapkan dan nilai yang sepadan. Berikut ialah contoh:

UPDATE users SET info = JSON_SET(info, '$.age', 26) WHERE id = 1;

4. Padamkan data JSON

Jika kita ingin mengalih keluar kunci atau nilai tertentu daripada medan JSON, kita boleh menggunakan fungsi JSON_REMOVE. Fungsi JSON_REMOVE menerima dua atau lebih parameter Parameter pertama ialah medan JSON yang akan dipadamkan dan parameter seterusnya ialah kunci atau laluan yang akan dipadamkan. Berikut ialah contoh:

UPDATE users SET info = JSON_REMOVE(info, '$.name') WHERE id = 1;

Ringkasan:

Artikel ini memperkenalkan operasi asas cara menyimpan dan menanyakan data JSON dalam MySQL. Dengan menggunakan format JSON untuk menyimpan data, kami boleh memanipulasi dan menanya data berstruktur kompleks dengan lebih mudah. Sebagai tambahan kepada fungsi yang diperkenalkan, MySQL juga menyediakan lebih banyak fungsi dan pengendali JSON untuk memenuhi keperluan yang lebih kompleks. Dalam pembangunan sebenar, kami boleh memilih untuk menggunakan format JSON untuk menyimpan data mengikut keperluan perniagaan tertentu untuk meningkatkan prestasi aplikasi dan fleksibiliti.

(Nota: Contoh di atas adalah berdasarkan versi MySQL 5.7. Jika anda menggunakan versi lain, sila rujuk dokumentasi MySQL versi yang sepadan untuk maklumat dan contoh yang lebih tepat.)

Atas ialah kandungan terperinci Bagaimana untuk menggunakan format JSON dalam MySQL untuk menyimpan dan bertanya data?. 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