to_json 函数

适用于:勾选“是” Databricks SQL 勾选“是” Databricks Runtime

返回一个 JSON 字符串,带有 expr 中指定的 STRUCTVARIANT

语法

to_json(expr [, options] )

参数

  • exprSTRUCT 表达式,或者 Databricks SQL 和 Databricks Runtime 15.3 及更高版本中的 VARIANT
  • options:一个可选的 MAP 文本表达式,其键和值为 STRING。 如果 exprVARIANT,则忽略这些选项。

返回

一个 STRING

from_json 函数,了解可能的 options 的详细信息。

示例

> SELECT to_json(named_struct('a', 1, 'b', 2));
 {"a":1,"b":2}

> SELECT to_json(named_struct('time', to_timestamp('2015-08-26', 'yyyy-MM-dd')), map('timestampFormat', 'dd/MM/yyyy'));
 {"time":"26/08/2015"}

> SELECT to_json(array(named_struct('a', 1, 'b', 2)));
 [{"a":1,"b":2}]

> SELECT to_json(map('a', named_struct('b', 1)));
 {"a":{"b":1}}

> SELECT to_json(map(named_struct('a', 1),named_struct('b', 2)));
 {"[1]":{"b":2}}

> SELECT to_json(map('a', 1));
 {"a":1}

> SELECT to_json(array((map('a', 1))));
 [{"a":1}]

-- VARIANT input
> SELECT to_json(parse_json('{"key": 123, "data": [4, 5, "str"]}'))
  {"data":[4,5,"str"],"key":123}