Skip to content

PostgreSQL jsonb_typeof() 函数 ​

PostgreSQL jsonb_typeof() 函数以字符串的形式返回指定的 JSONB 值的类型。

jsonb_typeof() 语法 ​

这是 PostgreSQL jsonb_typeof() 函数的语法:

sql
jsonb_typeof(json_value JSONB) -> TEXT

参数 ​

  • json_value

    必需的。 要检测类型的 JSONB 值。

返回值 ​

PostgreSQL jsonb_typeof() 函数返回一个文本字符串,它是指定的 JSONB 值的类型。可能返回值包括:object、array、string、number、boolean 和 null。

如果您提供了一个 NULL 参数,jsonb_typeof() 函数将返回 NULL。

jsonb_typeof() 示例 ​

本示例展示了如何使用 PostgreSQL jsonb_typeof() 函数返回 JSONB 值的类型。

sql
SELECT
  jsonb_typeof('"abc"') AS "abc",
  jsonb_typeof('123.45') AS "123.45",
  jsonb_typeof('true') AS "true",
  jsonb_typeof('false') AS "false",
  jsonb_typeof('[1,2,3]') AS "[1,2,3]",
  jsonb_typeof('{"x":1}') AS "{""x"":1}",
  jsonb_typeof('null') AS "null";
bash
  abc   | 123.45 |  true   |  false  | [1,2,3] | {"x":1} | null
--------+--------+---------+---------+---------+---------+------
 string | number | boolean | boolean | array   | object  | null

如果您提供了一个 NULL 参数,jsonb_typeof() 函数将返回 NULL。例如:

sql
SELECT jsonb_typeof(NULL) IS NULL AS "jsonb_typeof(NULL) IS NULL";
bash
 jsonb_typeof(NULL) IS NULL
---------------------------
 t