MariaDB JSON_TYPE() 函数使用指南

在 MariaDB 中,JSON_TYPE() 是一个内置函数,它以字符串形式返回给定的 JSON 值的类型。

MariaDB JSON_TYPE() 语法

这里是 MariaDB JSON_TYPE() 的语法:

JSON_TYPE(json_value)

参数

json_value
必需的。一个 JSON 值。

如果您提供了错误数量的参数,MariaDB 将报告一个错误: ERROR 1582 (42000): Incorrect parameter count in the call to native function 'JSON_TYPE'

返回值

MariaDB JSON_TYPE() 函数返回一个 utf8mb4 字符串,它代表了给定的 JSON 值的类型。JSON_TYPE() 函数将返回下面值中的一个:

  • ARRAY: JSON 数组,例如: [0,1,[2,3],{"x":1}]
  • OBJECT: JSON 对象,例如: {"x":1, "y":2}
  • BOOLEAN: JSON 布尔值,例如:true, false
  • NULL: JSON null 值,例如:null
  • DOUBLE: 至少有一个浮点小数的数字,例如:1.23
  • INTEGER: 没有浮点小数的数字,例如:1
  • STRING: JSON 字符串,例如:abc

如果参数为 NULL,此 JSON_TYPE() 函数将返回 NULL

MariaDB JSON_TYPE() 示例

这里列出了几个常见的 JSON_TYPE() 用法示例。

示例 1

SELECT JSON_TYPE('true'), JSON_TYPE('null'), JSON_TYPE('"abc"');

输出:

+-------------------+-------------------+--------------------+
| JSON_TYPE('true') | JSON_TYPE('null') | JSON_TYPE('"abc"') |
+-------------------+-------------------+--------------------+
| BOOLEAN           | NULL              | STRING             |
+-------------------+-------------------+--------------------+

示例 2: 数字

SELECT JSON_TYPE('1'), JSON_TYPE('1.23');

输出:

+----------------+-------------------+
| JSON_TYPE('1') | JSON_TYPE('1.23') |
+----------------+-------------------+
| INTEGER        | DOUBLE            |
+----------------+-------------------+

示例 3: 数组

SELECT JSON_TYPE('[]'), JSON_TYPE('[1, 2]');

输出:

+-----------------+---------------------+
| JSON_TYPE('[]') | JSON_TYPE('[1, 2]') |
+-----------------+---------------------+
| ARRAY           | ARRAY               |
+-----------------+---------------------+

示例 4: 对象

SELECT JSON_TYPE('{}'), JSON_TYPE('{"x": 1}');

输出:

+-----------------+-----------------------+
| JSON_TYPE('{}') | JSON_TYPE('{"x": 1}') |
+-----------------+-----------------------+
| OBJECT          | OBJECT                |
+-----------------+-----------------------+

NULL 参数

如果参数为 NULL, MariaDB JSON_TYPE() 函数将返回 NULL

SELECT JSON_TYPE(NULL);

输出:

+-----------------+
| JSON_TYPE(NULL) |
+-----------------+
| NULL            |
+-----------------+

结论

在 MariaDB 中,JSON_TYPE() 是一个内置函数,它以字符串形式返回给定的 JSON 值的类型。