Función COALESCE para MySQL

Vamos a usar en este artículo la función COALESCE de MySQL.

Nuestro ejemplo va a consistir en el cálculo del número de factura anual, cada año este código se reiniciaría a 0.

Por lo tanto si comenzamos año la consulta no va a devolver ninguna tupla ya que no habrá ninguna factura vinculada a ese año, por lo tanto al usar la función COALESCE le indicamos que en el caso que llegue vacía la consulta, tenga por defecto el valor 0.

Usaremos la función de MySQL MAX() para obtener siempre el número más alto de todas las facturas del año seleccionado, así cada vez que se registre una nueva factura se aplicará el máximo +1, en el caso que el máximo este vacio por falta de registros de la consulta, será cuando usemos el COALESCE.

SELECT 
   COALESCE(MAX(num_factura), 0)+1 AS "numMax" 
FROM 
   factura WHERE anyo = '$anyo'

Por ejemplo, si ahora queremos que el número de factura comience a contar desde el número 50, le indicaremos que cuando llegue vacía la consulta use por defecto el número 50, por lo tanto se aplicará el número (50 + 1).

COALESCE(MAX(num_factura), 50)+1 AS "numMax"

Iván Martínez

Ingeniero Informático apasionado por el mundo del desarrollo WEB. Me gusta caminar por este mundo lleno de tecnologías y día a día aprender cosas nuevas como el doctor Frankenstein ¡dadme cosas para experimentar!

Deja un comentario

Tu dirección de correo electrónico no será publicada.