开发者社区 问答 正文

OceanBase一个字符串分割函数,返回table创建失败,有人知道什么原因吗?

问题1:OceanBase一个字符串分割函数,返回table创建失败,有人知道什么原因吗?775bbace7cf59815a7b3111cc1135e9c.png 问题2:去掉后报table错误 CREATE OR REPLACE FUNCTION split_string_to_table( p_str VARCHAR(1000), p_separator CHAR(1) ) RETURNS TABLE ( id INT, value VARCHAR(1000) ) Pipelined AS BEGIN DECLARE v_idx PLS_INTEGER := 1; -- 使用循环代码块遍历字符串 FOR i in 1..LENGTH(p_str) LOOP -- 如果匹配到指定分隔符,则将之前的子串插入到结果表中 IF SUBSTR(p_str, i, 1) = p_separator THEN PIPE ROW (v_idx, SUBSTR(p_str, v_idx, i - v_idx)); v_idx := i + 1; END IF; END LOOP; -- 将最后一个子串(或唯一的子串)添加到结果表中 PIPE ROW (v_idx, SUBSTR(p_str, v_idx, LENGTH(p_str) + 1 - v_idx)); RETURN; END; oceanbase是不是不支持表值函数?

展开
收起
真的很搞笑 2023-06-11 19:40:53 316 分享 版权
来自: OceanBase
1 条回答
写回答
取消 提交回答
  • 回答1:报错显示语法错误,去掉 or replace 回答2:应该是的喔9571a0da146cf5864beb67dbf59fb50f.png ,此回答整理自钉群“[社区]技术答疑群OceanBase”

    2023-06-11 20:13:43
    赞同 展开评论