多年来,PostgreSQL 数据库服务器一直在增加各种 JSON 功能,而现在处理 JavaScript Object Notation(JSON)结构化数据的最新功能是 JSON_TABLE() SQL 函数。
JSON_TABLE() 函数允许将 JSON 数据转换为关系视图,而关系视图又可用于 FROM 子句等。JSON_TABLE()是PostgreSQL尚未实现的最后几个JSON SQL函数之一,MySQL/MariaDB、Oracle和其他一些数据库解决方案已经提供了JSON_TABLE()函数。摘自PostgreSQL的新文档
“JSON_TABLE是一个SQL/JSON函数,用于查询JSON数据,并将结果显示为关系视图,可以像访问普通SQL表一样访问该视图。您可以在 SELECT、UPDATE 或 DELETE 的 FROM 子句中使用 JSON_TABLE,也可以在 MERGE 语句中将 JSON_TABLE 用作数据源。
PostgreSQL 的 JSON_TABLE()初始支持已于今天合并到 Git。这将成为下一个主要版本(PostgreSQL 17)的一部分。
今天合并的还有 PostgreSQL 的非递归 JSON 解析器。这个用于 PostgreSQL 的 JSON 解析器可用于增量解析数据,但速度比递归下降解析器慢。
最初使用这种新 JSON 分析器的是用于增量解析备份清单的代码。所有这些代码已于今天合并到 PostgreSQL Git。
转自 PostgreSQL Merges JSON_TABLE(), Incremental JSON Parser – Phoronix