Pular para o conteúdo
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #106175
    Avatar de CleberAPCleberAP
    Participante

      Meus queridos!

      Em uma determinada tabela, tenho um campo texto. Nele existe milhões de registros.

      Exemplo:

      1000869908
      49293917

      O que estou tentando fazer, sem sucesso, é dar um select neste campo, mas já excluíndo os dois últimos caracteres do número.

      No exemplo acima o select iria me resultar:

      10008699
      492939

      Isso porque o antigo sistema utilizava os dois ultimos caracteres como decimais, e o sistema novo não trabalha com decimais e nem “reconhece” que os dois ultimos são.

      Tentei a função substr mas apanhei no select.

      Se eu usar abaixo o número direto no select funciona. Nesse caso ele remove o 07;
      select substr('148421607',0,length('148421607')-2) from dual;

      Porém tentei fazer usando o campo REGISTRO e não veio. Com certeza estou errando a sintaxe:
      select substr('registro',0,length('registro')-2) from TABELA

      Alguma luz?

      #106176
      Avatar de Fábio PradoFábio Prado
      Participante

        @CleberAP,

        Tire as aspas simples antes e depois do nome do campo. Me parece que o problema é só isso:
        select substr(registro,0,length(registro)-2) from TABELA

        []s

        Fábio Prado
        http://www.fabioprado.net

        #106177
        Avatar de CleberAPCleberAP
        Participante

          Obrigado, era isso mesmo!

          Apanhei para as “aspas” risos.

          Obrigado!

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