Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/03/2012, 14:05
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: mysql verificacion de correlativos

Hola palmach:

Hay muchas formas de hacer lo que quieres... me hubiera gustado que nos dijeras algunas de las consultas que intentas hacer (porque quiero suponer que al menos intentaste hacer alguna cierto???), ojo para la próxima.

Una forma sería más o menos así:


Código MySQL:
Ver original
  1. mysql> SELECT * FROM tabla;
  2. +-------+
  3. | campo |
  4. +-------+
  5. |     1 |
  6. |     2 |
  7. |     3 |
  8. |     4 |
  9. |     6 |
  10. |     7 |
  11. |     8 |
  12. |    10 |
  13. +-------+
  14. 8 rows in set (0.00 sec)
  15.  
  16. mysql> SELECT T1.campo, IF(T2.campo IS NULL, 'salto de correlativo', '') mensaje
  17.     -> FROM tabla T1
  18.     -> LEFT JOIN tabla T2 ON T1.campo + 1 = T2.campo;
  19. +-------+----------------------+
  20. | campo | mensaje              |
  21. +-------+----------------------+
  22. |     1 |                      |
  23. |     2 |                      |
  24. |     3 |                      |
  25. |     4 | salto de correlativo |
  26. |     6 |                      |
  27. |     7 |                      |
  28. |     8 | salto de correlativo |
  29. |    10 | salto de correlativo |
  30. +-------+----------------------+
  31. 8 rows in set (0.00 sec)


Observa que la condición ON se hace sumando al primer campo un 1, aquellos donde no exista registro correlativo aparecerán como null. Observa que en el último registro (10) también pone el mensaje, te toca investigar cómo evitar este caso.

Saludos
Leo.