Ir al contenido principal

GENERAR CÓDIGO AUTO CORRELATIVO – SQL

Ejemplo de Código en Mysql:
donde el campo numero es de tipo char(10) y la serie de char(4).
select 
        (case
            when
                (ordencompra.var_OrdenCompra_Numero = '9999999999')
            then
                convert( right(concat('0000',
                            (ifnull(ordencompra.var_OrdenCompra_Serie, 0) + 1)),
                    4) using latin1)
            when (ifnull(ordencompra.var_OrdenCompra_Serie, 0) = 0) then convert( right(concat('0000', 1), 4) using latin1)
            else ordencompra.var_OrdenCompra_Serie
        end) AS SERIE,
        (case
            when
                (ordencompra.var_OrdenCompra_Numero = '9999999999')
            then
                right(concat((ordencompra.var_OrdenCompra_Numero + 2)),
                    10)
            else right(concat('0000000000',
                        (ordencompra.var_OrdenCompra_Numero + 1)),
                10)
        end) AS NUMERO 
from ordencompra
    order by ordencompra.var_OrdenCompra_Serie , ordencompra.var_OrdenCompra_Numero desc
    limit 0 , 1

Comentarios