Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MySQL pilih di mana properti bidang JSON memiliki nilai

Beberapa contoh cara mengkueri bidang tipe data json:

SELECT * FROM users WHERE JSON_EXTRACT(meta_data, "$.first_name") = 'bob';

SELECT * FROM users WHERE JSON_EXTRACT(meta_data, "$.age") IS NOT NULL;

SELECT * FROM users WHERE JSON_EXTRACT(meta_data, "$.accepted_policy") = true;

Dengan mysql 5.7.9 +

Anda juga dapat melakukan ini (jalan pintas untuk JSON_EXTRACT):

SELECT * FROM users WHERE meta_data->"$.first_name" = 'bob'

Anda mungkin melihat hasil data json Anda "dikutip". Anda bisa menggunakan JSON_UNQUOTE, atau Anda bisa menggunakan ini, yang merupakan jalan pintas dari JSON_EXTRACT &JSON_UNQUOTE:

SELECT meta_data->>"$.first_name" FROM users WHERE meta_data->>"$.first_name" IS NOT NULL

Dan untuk memilih data dari dalam sub objek:

SELECT meta_data->>"$.address.tel" FROM users WHERE meta_data->>"$.address.street" = "123 Main St"

dokumen:https://dev.mysql.com /doc/refman/5.7/en/json-search-functions.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rentang baris dinamis saat mengambil catatan dari database

  2. Nama tabel sebagai parameter menggunakan pernyataan yang disiapkan PDO/MySQL

  3. Bagaimana cara membatasi jumlah baris yang dapat disimpan di tabel mysql?

  4. python odo sql AssertionError:datashape harus tipe Record, dapat 0 * {...}

  5. Setel bidang Peningkatan Otomatis mulai dari 1000 di laravel migrasi 5.1