Postgresql 将SQLXML编码转换为SQLJSON编码
Postgresql Convert SQL XML Coding to SQL JSON Coding
如何将XMLSQL编码转换为JSONSQL编码。
示例:
SELECT XMLELEMENT(NAME "ORDER", XMLFOREST(PURCHASE_ORDER AS OD_NO)) AS "XMLELEMENT" FROM
TBL_SALES
现在如何将此 XMLELEMENT
& XMLFOREST
转换为 JSON
函数。请帮我。我们在 JSON
函数中有等效的 XMLELEMENT
/XMLFOREST
吗?
xml:
<order><OD_NO>4524286167</OD_NO><order_date>2020-06-15</order_date><sales_office>CH</sales_office></order>
json:
{ "OD_NO": "4524286167", "order_date": "2020-06-15", "sales_office": "CH" }
这里 row_to_json
会做这件事。
您可以像下面这样写您的查询:
select row_to_json(x) from
(select purchase_order "OD_NO", order_date, sales_office from tbl_sales ) x
如果您想将所有结果汇总到一个 JSON 数组中,请使用 JSON_AGG
和 row_to_json
:
select json_agg(row_to_json(x)) from
(select purchase_order "OD_NO", order_date, sales_office from tbl_sales ) x
这些 Postgresql functions
json_build_object(VARIADIC "any")
和
jsonb_build_object(VARIADIC "any")
在语义上接近于 XMLELEMENT,并且对于您可能需要的任何复杂 JSON 的“刺绣”非常方便。您的查询可能如下所示:
select json_build_object
(
'OD_NO', order_number, -- or whatever the name of the column is
'order_date', order_date,
'sales_office', sales_office
) as json_order
from tbl_sales;
不过我认为没有 XMLFOREST 等价物。
如何将XMLSQL编码转换为JSONSQL编码。 示例:
SELECT XMLELEMENT(NAME "ORDER", XMLFOREST(PURCHASE_ORDER AS OD_NO)) AS "XMLELEMENT" FROM
TBL_SALES
现在如何将此 XMLELEMENT
& XMLFOREST
转换为 JSON
函数。请帮我。我们在 JSON
函数中有等效的 XMLELEMENT
/XMLFOREST
吗?
xml:
<order><OD_NO>4524286167</OD_NO><order_date>2020-06-15</order_date><sales_office>CH</sales_office></order>
json:
{ "OD_NO": "4524286167", "order_date": "2020-06-15", "sales_office": "CH" }
这里 row_to_json
会做这件事。
您可以像下面这样写您的查询:
select row_to_json(x) from
(select purchase_order "OD_NO", order_date, sales_office from tbl_sales ) x
如果您想将所有结果汇总到一个 JSON 数组中,请使用 JSON_AGG
和 row_to_json
:
select json_agg(row_to_json(x)) from
(select purchase_order "OD_NO", order_date, sales_office from tbl_sales ) x
这些 Postgresql functions
json_build_object(VARIADIC "any")
和
jsonb_build_object(VARIADIC "any")
在语义上接近于 XMLELEMENT,并且对于您可能需要的任何复杂 JSON 的“刺绣”非常方便。您的查询可能如下所示:
select json_build_object
(
'OD_NO', order_number, -- or whatever the name of the column is
'order_date', order_date,
'sales_office', sales_office
) as json_order
from tbl_sales;
不过我认为没有 XMLFOREST 等价物。