Ver Mensaje Individual
  #12 (permalink)  
Antiguo 17/10/2012, 10:38
alex760125
 
Fecha de Ingreso: enero-2010
Mensajes: 239
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema con incremento de variables.

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Finalmente no encontré un defecto puntual que pueda generar el doble recorrido de la tabla, y como hacer una prueba de escritorio en ese contexto me resulta demasiado engorroso, opté por una aproximamción diferente.
La cosa es así:
Según entendí, lo que quieres obtener es la lista de numeros de lotería, discriminada por la cantidad de veces que se repite cada uno en una secuencia de cinco numeros de un sorteo, y a su vez encolumnados en base a la cantidad de repeticiones que se dan.
Para lograrlo cuentas la cantidad de veces en que un numero se repite y descartas las repeticiones para evitr la duplicidad de representaciones.
Si no me equivoco, esta consulta te devovlerá un array de dos campos, donde el primero es el numero que sale sorteado, y el segundo representa la cantidad de veces que se lo halló en la tabla, sin discriminar en qué posicion de las cinco salió.
Código MySQL:
Ver original
  1. SELECT numero, COUNT(*) repet
  2.     SELECT uno `numero`
  3.     FROM jugadas
  4.     UNION ALL
  5.     SELECT dos
  6.     FROM jugadas
  7.     UNION ALL
  8.     SELECT tres
  9.     FROM jugadas
  10.     UNION ALL
  11.     SELECT cuatro
  12.     FROM jugadas
  13.     UNION ALL
  14.     SELECT cinco
  15.     FROM jugadas
  16.     )t1
  17. GROUP BY numero
  18. ORDER BY repet ASC, numero DESC
Si este array te sirve, solamente tendrías que representarlo, generando una columna nueva por cada cambio de "repet" que haya.
Lamentablemente no hay forma de hacer tablas inversas en MySQL.

Fijate si te sirve, y qué habría que afinarle.
Quiero comentarte algo del porqué sospeché de Mysql, yo con mi tabla llena hasta la fila 526 hice algunas pruebas, borraba etc.. En un momento después de 526 tenía 528, 530... Y las tablas php que me daban eran una locura nada que ver con la tabla Mysql, como si contara incluso las filas que había borrado... Borré esos registros, arreglé el autoincrement y se organizó perfecto, salvo las repeticiones dobles.

Por lo que entiendo de la solución que me das, debo hacer lo de arriba para cada número?
Qué significa t1?