Mencari Elemen Tatasusunan JSON dalam MySQL
Pertanyaan anda cuba menggunakan fungsi JSON_EXTRACT untuk membandingkan keseluruhan tatasusunan dengan nilai skalar, yang akan sentiasa mengembalikan hasil bukan nol. Untuk mencari elemen tertentu dalam tatasusunan, anda boleh menggunakan fungsi JSON_CONTAINS.
Mencari Tatasusunan Integer:
JSON_CONTAINS('[1,2,3,4,5]','7','$')
Ini akan mengembalikan 0 jika tatasusunan tidak mengandungi nilai 7 dan 1 jika ada.
Mencari Susunan Rentetan:
JSON_CONTAINS('["a","2","c","4","x"]','"x"','$')
Ini akan mengembalikan 1 jika tatasusunan mengandungi rentetan "x" dan 0 sebaliknya.
Pertanyaan untuk Kes Anda:
Untuk memilih semua baris yang lajur data mengandungi elemen tatasusunan lebih daripada 2, gunakan yang berikut pertanyaan:
SELECT * from my_table WHERE JSON_CONTAINS(data, '2', '$');
Ini akan mengembalikan semua baris yang tatasusunan lajur data mengandungi elemen yang lebih besar daripada 2.
Atas ialah kandungan terperinci Bagaimana untuk Mencari Elemen dalam Tatasusunan JSON dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!