HANA SQL函数将逗号分隔的字符串拆分为子字符串

时间:2017-09-12 07:25:04

标签: sql hana hana-sql-script

我有以下HANA程序:

CREATE PROCEDURE SP_LIT()
AS

BEGIN
DECLARE count INT;
DECLARE pos INT;
DECLARE value NVARCHAR(100);

value := 'R,A';


IF LENGTH(:value) > 0 THEN

    value := :value + ',';
    pos   := LOCATE(:value,',',1);
END IF;
    WHILE :pos > 0 DO
    BEGIN
        INSERT INTO [O/P table] VALUES (LEFT(:value,:pos-1));
        value := RIGHT(:value, LENGTH (:value)-:pos);
        pos := LOCATE(:value,',',1);

    END;
    END WHILE;
END;

一切似乎都很好,但在执行时会抛出以下错误:

Error: invalid number exception: invalid number: not a valid number string 'R,A'

知道我哪里错了吗?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。 串联中的“+”符号应替换为“||”管道运营商。