MariaDB JSON

測試環境為 CentOS 8 x86_64

使用關聯式資料庫( RDBMS : Relational Database Management System )的 MariaDB 也可以儲存與查詢 NoSQL ( Not Only SQL : 使用非關聯式資料庫的資料庫,資料儲存不需要固定的欄位 ) 的 JSON ( JavaScript Object Notation )資料格式.

先來看一下 JSON 不同的資料類型 (透過 JSON_TYPE 函數來檢視目前資料是哪一種型態):

  1. 物件 (Object) : 使用 { } , 無序成對 (pair) 的 {鍵 Key name :值 value} 方式來儲存,鍵值之間使用逗號來分隔.
    MariaDB [(none)]> SELECT JSON_TYPE('{"A":"1"}');
    +------------------------+
    | JSON_TYPE('{"A":"1"}') |
    +------------------------+
    | OBJECT                 |
    +------------------------+
    1 row in set (0.000 sec)
    
  2. 陣列 (Array) : 使用 [ ] , 資料彼此間使用逗號來分割,如:[value, value] .
    MariaDB [(none)]> SELECT JSON_TYPE('[0,1]');
    +--------------------+
    | JSON_TYPE('[0,1]') |
    +--------------------+
    | ARRAY              |
    +--------------------+
    1 row in set (0.000 sec)
    
  3. 數字 (Number) : 直接使用整數 (INTEGER) 或是浮點數 (DOUBLE).
    MariaDB [(none)]> SELECT JSON_TYPE('0');
    +----------------+
    | JSON_TYPE('0') |
    +----------------+
    | INTEGER        |
    +----------------+
    1 row in set (0.000 sec)
    
    MariaDB [(none)]> SELECT JSON_TYPE('0.1');
    +------------------+
    | JSON_TYPE('0.1') |
    +------------------+
    | DOUBLE           |
    +------------------+
    1 row in set (0.000 sec)
    
  4. 字串 (String) : 使用 “” (括號)來表示字串.
    MariaDB [(none)]> SELECT JSON_TYPE('"ST"');
    +-------------------+
    | JSON_TYPE('"ST"') |
    +-------------------+
    | STRING            |
    +-------------------+
    1 row in set (0.000 sec)
    
  5. 布林函數 (Boolean) : 使用 TRUE 或 FALSE.
    MariaDB [(none)]> SELECT JSON_TYPE('true');
    +-------------------+
    | JSON_TYPE('true') |
    +-------------------+
    | BOOLEAN           |
    +-------------------+
    1 row in set (0.000 sec)
    
    MariaDB [(none)]> SELECT JSON_TYPE('false');
    +--------------------+
    | JSON_TYPE('false') |
    +--------------------+
    | BOOLEAN            |
    +--------------------+
    1 row in set (0.000 sec)
    
  6. NULL 類型.
    
    MariaDB [(none)]> SELECT JSON_TYPE(NULL);
    +-----------------+
    | JSON_TYPE(NULL) |
    +-----------------+
    | NULL            |
    +-----------------+
    1 row in set (0.000 sec)
    

JSON 語法

JSON 函數

綜合應用

沒有解決問題,試試搜尋本站其他內容

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料