Pular para o conteúdo
  • Este tópico contém 2 respostas, 2 vozes e foi atualizado pela última vez 9 anos, 6 meses atrás por Avatar de Marco BorgesMarco Borges.
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #107498
    Avatar de Marco BorgesMarco Borges
    Participante

      O que tenho:

      — eu fiz justamente esta separação para ver o que cada um pega, e entender o processo.
      o que cada um está recebendo

      v_1- RADAR,2,02/02/2015
      v_2= *|61604 | ITAUCARD | C5 | boletar_a_partir_de 24/04/2015 |Vl com desc. A vista:3016.27′,19,255

      select v_AjusteBem
      into v_1
      from dual;

      select substr(v_divbem,v_posIni,255)
      into v_2
      from dual;

      update divida
      set div_bem = v_1 || v_2
      where div_nrocontrato = p_contrato
      and div_pro_cod = C_PRODUTO
      and DIV_VALIDO = 1
      and div_dataalteracao=sysdate;

      Qual o meu problema?

      Quero um update com essas duas informações concatenadas, logo, estou encontrando dificuldade
      em formata-las, uma vez que a v_2 recebe por arquivos vários “pipes” e o sql entende
      que esses são parte da concatenação.

      Teria outra forma?

      #107502
      Avatar de rmanrman
      Participante

        @Marco Borges

        Realmente é estranho, mas se você concatenar o | separadamente da string, o problema não ocorre.


        SQL> select 'campo0'||'|'||substr('campo1|campo2|campo3',8,255)||'|'||'campo4' from dual;

        'CAMPO0'||'|'||SUBSTR('CAMPO1|CAMPO2|CAMPO3',8,255)||'|'||'CAMPO4'

        campo0|campo2|campo3|campo4

        #107503
        Avatar de Marco BorgesMarco Borges
        Participante

          Até daria certo, se eu soubesse a posição exata entende dos |

          e que e um campo varchar2, que pode ir de 1 a 255 entende….

          Mas brigado cara.

        Visualizando 3 posts - 1 até 3 (de 3 do total)
        • Você deve fazer login para responder a este tópico.
        plugins premium WordPress