Hola amigos tengo el siguiente problema estoy migrando este procedimiento a funcion en postgres
Código:
CREATE OR REPLACE FUNCTION FinalizeTask (IN TaskList TEXT) RETURNS VOID AS $$
DECLARE
TaskList ALIAS FOR $1;
TaskID float8;
Finalize int2;
Token varchar(22);
Cnt INT Default 1;
Status INT Default 1;
BEGIN
WHILE Status = 1 loop
SELECT SPLIT_STR(TaskList, '|', Cnt) INTO Token;
SELECT SPLIT_STR(Token, '#', 1) INTO TaskID;
SELECT SPLIT_STR(Token, '#', 2) INTO Finalize;
UPDATE Tarea SET Tarea.Fecha_Finalizacion = NOW(), Tarea.Finalizada = Finalize WHERE Tarea.ID_Tarea = TaskID;
Cnt := Cnt + 1;
SELECT TaskList RLIKE CONCAT('((\\|).*){', Cnt, '}') INTO Status;
END loop;
END;
$$ LANGUAGE plpgsql;
y me tira error aqui
Código:
SELECT TaskList RLIKE CONCAT('((\\|).*){', Cnt, '}') INTO Status;
he leido sobre la concatenacion string || string y utilizar la funcion split_part pero no cacho como hacerlo ojala me puedan ayudar