JSON函數
更新時間 2025-07-07 18:26:18
最近更新時間: 2025-07-07 18:26:18
分享文章

本文介紹JSON函數的基本語法及示例。
函數列表
| 函數名稱 | 語法 | 說明 |
|---|---|---|
| json_contains | json_contains(x, y) | 測試一個JSON串是否包含某個特定值。 |
| json_array_length | json_array_length(x) | 計算JSON數組中元素的數量。 |
| json_extract | json_extract(x, path) | 從JSON對象或JSON數組中提取一組JSON值(數組或對象)。同json_value函數。 |
| json_type | json_type(x) | 返回JSON串類型,如果指定字段,則返回JSON串中指定字段類型。 |
| json_value | json_extract(x, path) | 從JSON對象或JSON數組中提取一組標量值(字符串、整數或布爾值)。同json_extract函數。 |
| json_length | json_length(x) | 返回指定JSON對象或JSON數組的長度。 |
| json_valid | json_valid(x) | 判斷指定字符串是否為有效JSON。 |
json_contains函數
測試一個JSON串是否包含某個特定值。
語法
json_contains(x,?y)
參數說明
| 參數名稱 | 說明 | 類型 | 是否必選 |
|---|---|---|---|
| x |
原始JSON字符串 | string類型 | 是 |
| y | JSON鍵名 | string類型 | 是 |
返回值類型
integer類型(0:不包含;1:包含)
示例
| 類型 |
示例 |
|---|---|
| 統計分析語句 |
SELECT json_contains('{"hostName":"www.test-002.com","latency":2.1}', 'hostName') |
| 返回結果 |
1 |
json_array_length函數
計算JSON數組中元素的數量。
語法
json_array_length(x)
參數說明
| 參數名稱 | 說明 | 類型 | 是否必選 |
|---|---|---|---|
| x |
JSON字符串 | string類型 | 是 |
返回值類型
integer類型
示例
| 類型 |
示例 |
|---|---|
| 統計分析語句 |
SELECT json_array_length('[1,2,3]') |
| 返回結果 |
3 |
json_extract函數
從JSON對象或JSON數組中提取一組JSON值(數組或對象)。同json_value函數。
語法
json_extract(x,?path)
參數說明
| 參數名稱 | 說明 | 類型 | 是否必選 |
|---|---|---|---|
| x |
原始JSON字符串 | string類型 | 是 |
| path | JSON路徑 | string類型 |
是 |
返回值類型
string類型(JSON格式)
示例
| 類型 |
示例 |
|---|---|
| 統計分析語句 |
SELECT json_extract('[{"hello":"world"}, {"find":"path"}]', '$[0].hello') |
| 返回結果 |
"world" |
json_type函數
返回JSON串類型,如果指定字段,則返回JSON串中指定字段類型。
語法
json_type(x)
參數說明
| 參數名稱 | 說明 | 類型 | 是否必選 |
|---|---|---|---|
| x |
JSON字符串 | string類型 | 是 |
返回值類型
string類型
示例
| 類型 |
示例 |
|---|---|
| 統計分析語句 |
SELECT json_type('[{"hello":"world"}, {"hi":"ctyun"}]') |
| 返回結果 |
Array |
json_length函數
返回指定JSON對象或JSON數組的長度。
語法
json_length(x)
參數說明
| 參數名稱 | 說明 | 類型 | 是否必選 |
|---|---|---|---|
| x |
JSON字符串 | string類型 | 是 |
返回值類型
integer類型
示例
| 類型 |
示例 |
|---|---|
| 統計分析語句 |
SELECT json_length('{"hello":"world","hi":"ctyun"}') |
| 返回結果 |
2 |
json_valid函數
判斷指定字符串是否為有效JSON。
語法
json_valid(x)
參數說明
| 參數名稱 | 說明 | 類型 | 是否必選 |
|---|---|---|---|
| x |
JSON字符串 | string類型 | 是 |
返回值類型
integer類型(0:無效;1:有效)
示例
| 類型 |
示例 |
|---|---|
| 統計分析語句 |
SELECT json_valid('{"hello":"world","test":1}') |
| 返回結果 |
1 |