在 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 条件,以适应你的实际情况。

PL/SQL 获取 JSON 字段中特定值并更新

原文地址: https://www.cveoy.top/t/topic/ndpR 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录