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

JSON_TYPE() – Dapatkan Jenis Nilai JSON di MySQL

Di MySQL, JSON_TYPE() fungsi mengembalikan jenis nilai JSON. Lebih khusus lagi, ini mengembalikan utf8mb4 string yang menunjukkan jenis nilai.

Anda memberikan nilai JSON sebagai argumen.

Sintaks

Sintaksnya seperti ini:

JSON_TYPE(json_val)

Dimana json_val adalah nilai JSON untuk mengembalikan jenisnya. Ini bisa berupa objek, larik, atau tipe skalar.

Contoh 1 – Objek

Berikut adalah contoh ketika nilai adalah sebuah objek.

SET @data = '{"Name": "Homer", "Stupid": true}';
SELECT JSON_TYPE(@data) 'JSON Type';

Hasil:

+-----------+
| JSON Type |
+-----------+
| OBJECT    |
+-----------+

Contoh 2 – Larik

Berikut adalah contoh array.

SET @data = '[1, 2, 3]';
SELECT JSON_TYPE(@data) 'JSON Type';

Hasil:

+-----------+
| JSON Type |
+-----------+
| ARRAY     |
+-----------+

Contoh 3 – Ekstrak Data dari Array

Anda juga bisa mendapatkan jenis elemen individual dalam array.

SET @data = '[1, 2, 3]';
SELECT 
  JSON_EXTRACT(@data, '$[1]') 'Data',
  JSON_TYPE(JSON_EXTRACT(@data, '$[1]')) 'JSON Type';

Hasil:

+------+-----------+
| Data | JSON Type |
+------+-----------+
| 2    | INTEGER   |
+------+-----------+

Contoh 4 – Mengekstrak Data dari Objek

Hal yang sama berlaku untuk anggota suatu objek.

SET @data = '{"Name": "Homer", "Stupid": "True"}';
SELECT 
  JSON_EXTRACT(@data, '$.Stupid') 'Data',
  JSON_TYPE(JSON_EXTRACT(@data, '$.Stupid')) 'JSON Type';

Hasil:

+--------+-----------+
| Data   | JSON Type |
+--------+-----------+
| "True" | STRING    |
+--------+-----------+

Dalam hal ini, nilainya adalah string literal "True" .

Ini contoh lain, tapi kali ini menggunakan nilai boolean true .

SET @data = '{"Name": "Homer", "Stupid": true}';
SELECT 
  JSON_EXTRACT(@data, '$.Stupid') 'Data',
  JSON_TYPE(JSON_EXTRACT(@data, '$.Stupid')) 'JSON Type';

Hasil:

+------+-----------+
| Data | JSON Type |
+------+-----------+
| true | BOOLEAN   |
+------+-----------+

Contoh 5 – Kueri Basis Data

Contoh ini menggunakan kolom database.

SELECT 
  Contents,
  JSON_TYPE(Contents) 'Contents',
  JSON_TYPE(JSON_EXTRACT(Contents, '$.Name')) 'Name'
FROM Collections 
WHERE CollectionId = 4;

Hasil:

+--------------------------------+----------+--------+
| Contents                       | Contents | Name   |
+--------------------------------+----------+--------+
| {"Name": "Homer", "Stupid": 1} | OBJECT   | STRING |
+--------------------------------+----------+--------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Instal MySQL di Mac

  2. Kendala kunci asing MySQL, penghapusan kaskade

  3. Memantau Server Percona untuk MySQL - Metrik Utama

  4. Kesalahan MySql:Tidak dapat memperbarui tabel dalam fungsi/pemicu tersimpan karena sudah digunakan oleh pernyataan yang memanggil fungsi/pemicu tersimpan ini

  5. SYSDATE() Contoh – MySQL