⌘+k ctrl+k
1.3 (稳定版)
搜索快捷键 cmd + k | ctrl + k
JSON 类型

DuckDB 通过 JSON 逻辑类型支持 json。在 JSON 函数中,JSON 逻辑类型被解释为 JSON(即被解析),而不是被解释为 VARCHAR(即普通字符串,页面底部有关于相等比较的注意事项)。所有 JSON 创建函数都返回此类型的值。

我们还允许将 DuckDB 的任何类型转换为 JSON,以及将 JSON 转换回 DuckDB 的任何类型。例如,要将 JSON 转换为 DuckDB 的 STRUCT 类型,请运行

SELECT '{"duck": 42}'::JSON::STRUCT(duck INTEGER);
{'duck': 42}

反向转换

SELECT {duck: 42}::JSON;
{"duck":42}

这适用于示例中所示的嵌套类型,也适用于非嵌套类型

SELECT '2023-05-12'::DATE::JSON;
"2023-05-12"

此行为的唯一例外是将 VARCHAR 转换为 JSON,它不改变数据,而是解析并验证 VARCHAR 的内容是否为 JSON。