【发布时间】:2023-03-03 20:46:02
【问题描述】:
我是 SQL 新手,我正在尝试创建一个包含 6 个字符串的过程,例如。 'POLICE' 然后将返回两个子字符串值,例如。 'POL','ICE'
这是我迄今为止尝试过的:
procedure split_string(inputString in string, substr1 in OUT string, substr2 in OUT string)
is
begin
substr1 := SUBSTR(inputString, 1, 3);
substr2 := SUBSTR(inputString, 4, 3);
end split_string;
但是这不起作用,我也不确定如何调用这个函数并在代码的其他地方使用它的值。
是这样的吗:
split_string('POLICE') ?
【问题讨论】:
-
您也必须传递 substr1 和 substr2 占位符。使用
split_string('POLICE',substr1,substr2);。然后,您可以使用 substr1 和 substr2,因为由于过程调用,它们将具有更新的值。当然,请使用 VARCHAR2,如下面的答案所示。