Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Duda] Usa max(NUMERO)

consulta el profesor usa MAX(NUMERO) pero al ser varchar le arroja 9999 porque es el valor mas grande ordenado como varchar, pero hay 87976 facturas por ende salta error cuando uso esa formula porque me crea un numero de venta ya existente, yo lo resolvi asi.

SET vnventas = (SELECT NUMERO FROM tb_ventas ORDER BY CAST(NUMERO AS UNSIGNED) DESC LIMIT 0,1)+1;

1 respuesta

¡Hola Carlos! cómo va?

Tu solución de convertir el número a UNSIGNED es una buena alternativa. Sin embargo, para evitar problemas con números de factura existentes, podrías considerar agregar un prefijo o sufijo al número de venta, por ejemplo:

SET vnventas = (SELECT CONCAT('V', CAST(NUMERO AS UNSIGNED)) FROM tb_ventas ORDER BY CAST(NUMERO AS UNSIGNED) DESC LIMIT 0,1)+1;

Al agregar una letra 'V' al principio del número de venta, puede ser una solución para evitar conflictos con los números de factura existentes.

Espero que esta sugerencia te sea de ayuda. ¡Si tienes alguna otra duda, no dudes en preguntar!

Si este post te ayudó, por favor, marca como solucionado ✓.