• Miércoles 20 de Noviembre de 2024, 12:30

Autor Tema:  Maximo  (Leído 1516 veces)

alexis17

  • Miembro MUY activo
  • ***
  • Mensajes: 378
    • Ver Perfil
    • http://www.codigobasico.net
Maximo
« en: Domingo 30 de Marzo de 2008, 22:30 »
0
buenas tardes

estoy sacando el valor maximo de un campo pero ese campo es varchar

lo estoy haciendo asi


   select concat('MA', max(substr(tipo,3))+1)
        into :is_cod_tipo
    from tipos
    where tipo like 'MA%';


ya que los codigos son

MA245

osea que el campo tiene 5 posiciones

de esa forma me funciona bien

el problema es si tengo un codigo que sea ejemplo

MA040


entonces cuando intento sacar el valor maximo me manda es
MA41

y no

MA041

como podria solucionar eso
Cada dia aprendo algo nuevo

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Maximo
« Respuesta #1 en: Miércoles 30 de Abril de 2008, 06:51 »
0
<!--sql--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>SQL </td></tr><tr><td id='CODE'><!--sql1-->[color=blue;font-weight]SELECT[/color] 'MA' || LPAD (MAX (SUBSTR (Tipo, 3)) + 1,
                     3,
                     '0'
                    )
FROM Tipos WHERE Tipo LIKE 'MA%' <!--sql2--></td></tr></table><div class='postcolor'><!--sql3-->
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io