Ver Mensaje Individual
  #10 (permalink)  
Antiguo 09/05/2014, 13:03
xinxan22
 
Fecha de Ingreso: septiembre-2005
Mensajes: 522
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: Hacer un SELECT con limite 1 para dos códigos

Hola,

gracias por las respuestas.

Como he mencionado en el post anterior:

la tabla es innodb, con 21 campos. Código y fecha están indexados. Cuando hago SELECT no uso *.

El select:

Código MySQL:
Ver original
  1. SELECT codigo, MAX(fecha) fecha
  2. FROM tabla
  3. WHERE codigo IN (8, 10)
  4. GROUP BY codigo

Tarda 3 segundos, y me da el resultado que esperaba.

El segundo select:

Código MySQL:
Ver original
  1. SELECT codigo, fecha
  2.     (SELECT codigo, fecha
  3.     FROM tabla
  4.     WHERE codigo IN (8, 10)
  5.     ORDER BY codigo, fecha) T1
  6. GROUP BY codigo

Tarda menos de 1 segundo y también me da el resultado esperado.

Gracias por las respuestas.

En el caso de tener mas códigos, por ejemplo, 8,9,10,11,12 y 13. Debería usar el mismo web codigo in (8,9,10,11,12,13) o es mejor usar WHERE codigo=8 OR codigo=9...?

SAludos

Última edición por gnzsoloyo; 09/05/2014 a las 13:16