PL/SQL 获取 JSON 字段中特定值并更新
在 PL/SQL 中,如果一个字段的值为 JSON 格式,例如 '{"value":["公共","其它"],"cascader":true}',可以使用 JSON_VALUE 函数来获取 JSON 字符串中的特定值,然后使用 UPDATE 语句将获取的值更新到原字段中。
以下示例代码演示了如何从 'reason' 字段的 'value' 列表中提取 '其它' 值并更新到数据库中:
DECLARE
v_reason VARCHAR2(100);
BEGIN
-- 获取原字段中的 JSON 字符串值
SELECT reason INTO v_reason FROM your_table WHERE ...;
-- 从 JSON 字符串中获取 value 值中的 '其它'
SELECT JSON_VALUE(v_reason, '$.value[1]') INTO v_reason FROM DUAL;
-- 更新原字段中的值
UPDATE your_table SET reason = v_reason WHERE ...;
COMMIT;
END;
/
在示例代码中,首先通过 SELECT 语句将原字段中的 JSON 字符串值赋给变量 v_reason。然后使用 JSON_VALUE 函数从 JSON 字符串中获取 value 值中的 '其它',并将结果保存到 v_reason 变量中。最后使用 UPDATE 语句将更新后的值更新到原字段中。
注意替换示例代码中的 your_table 和 WHERE 条件,以适应你的实际情况。
原文地址: https://www.cveoy.top/t/topic/ndpR 著作权归作者所有。请勿转载和采集!