處理 JSON 格式的資料
介紹如何處理 JSON Object,使用 Oracle 的 JSON_TABLE 函數解析 JSON 資料並將其轉換為關聯式資料表格式。
概述
使用 JSON_TABLE 函數解析 JSON Object
DECLARE
l_data clob := q'! {
"日期": "2025/1/1",
"支付方式": "現金",
"類別": "食",
"支出": 1500,
"收入": null,
"備註": "餐廳聚餐"
} !';
type txn_rec_type is record (
txn_date date,
payment_method varchar2(20),
category varchar2(20),
expense number,
income number,
note varchar2(100)
);
l_rec txn_rec_type;
BEGIN
SELECT * INTO l_rec
FROM JSON_TABLE(
l_data,
'$'
COLUMNS (
txn_date VARCHAR2(20) PATH '$.日期',
payment_method VARCHAR2(20) PATH '$.支付方式',
category VARCHAR2(20) PATH '$.類別',
expense NUMBER PATH '$.支出',
income NUMBER PATH '$.收入',
note VARCHAR2(100) PATH '$.備註'
)
);
DBMS_OUTPUT.PUT_LINE('日期: ' || l_rec.txn_date);
DBMS_OUTPUT.PUT_LINE('支付方式: ' || l_rec.payment_method);
DBMS_OUTPUT.PUT_LINE('類別: ' || l_rec.category);
DBMS_OUTPUT.PUT_LINE('支出: ' || l_rec.expense);
DBMS_OUTPUT.PUT_LINE('收入: ' || l_rec.income);
DBMS_OUTPUT.PUT_LINE('備註: ' || l_rec.note);
END;
/說明
JSON_TABLE() 的語法
語法說明
範例
將 JSON Object Insert 到資料表中
參考資料
Last updated