Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mencari dan Menapis Data JSON dengan Cekap dalam Pertanyaan MySQL?

Bagaimanakah Saya Boleh Mencari dan Menapis Data JSON dengan Cekap dalam Pertanyaan MySQL?

DDD
DDDasal
2024-12-10 17:51:10454semak imbas

How Can I Efficiently Search and Filter JSON Data within MySQL Queries?

Carian Data JSON dalam Pertanyaan MySQL

Pertanyaan dalam MySQL yang melibatkan data JSON menjadi semakin penting. JSON, atau Notasi Objek JavaScript, ialah format berasaskan teks yang biasa digunakan untuk pertukaran data. Untuk mendapatkan semula data khusus daripada JSON yang disimpan dalam MySQL dengan cekap, pengubahsuaian pertanyaan tertentu diperlukan.

Satu pengubahsuaian sedemikian melibatkan pengekstrakan data berdasarkan pasangan nilai kunci. Pertanyaan yang diberikan,

SELECT  `id` ,  `attribs_json` 
FROM  `products` 
WHERE  `attribs_json` REGEXP  '"1":{"value":[^"3"$]'

berhasrat untuk mengekstrak kunci bersamaan dengan "1" dan nilai tidak sama dengan "3."

Jika anda menggunakan MySQL versi 5.7 atau lebih baru, anda boleh menggunakan pendekatan yang lebih mudah menggunakan fungsi JSON_EXTRACT(), sebagai berikut:

SELECT JSON_EXTRACT(name, "$.id") AS name
FROM table
WHERE JSON_EXTRACT(name, "$.id") > 3

Pertanyaan ini mengekstrak nilai "id" daripada objek JSON dalam lajur "nama" dan menapis hasil dengan "id" lebih besar daripada 3.

Untuk komprehensif butiran tentang fungsi carian JSON dalam MySQL, rujuk manual rujukan MySQL rasmi: https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencari dan Menapis Data JSON dengan Cekap dalam Pertanyaan MySQL?. 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