1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Function com while no DB2

Boa tarde, sou iniciante em DB2, e após muita pesquisa continuo com muitas dúvidas, aqui na empresa tem uma aplicação que utiliza o oracle, slq server e postgres, e agora temos um novo cliente que utliza db2, se puderem me ajudar ficarei grato.

Tenho um procedure que chama uma function no oracle, no db2 consegui criar a procedure, só que a function não funciona, pq dentro dela tem a instrução WHILE com o comparador >=, pelo que vi só funciona se for apenas =, a função é a seguinte:

CREATE OR REPLACE FUNCTION concatenar(nivel INT)
LANGUAGE SQL
RETURNS VARCHAR(50) 
  BEGIN 
    DECLARE aux VARCHAR(50);
    DECLARE v_count INT; 

    SET v_count = nivel; 

    WHILE v_count < 5 DO 
      IF v_count = nivel THEN 
        SET aux = v_count || aux; 
      ELSE 
        SET aux = v_count || '|' || aux; 
      END IF; 

      SET v_count = v_count+1; 
    END WHILE; 

    RETURN aux; 
 END

Vi tb que posso utilizar o WHILE dentro da procedure, só que preciso retorna um VARCHAR, coisa que a procedure não faz

  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

2 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags sql db2 ou faça a sua própria pergunta.