Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Duda con consulta con ferchas.

Estas en el tema de Duda con consulta con ferchas. en el foro de Mysql en Foros del Web. Hola tengo una tabla que se ve mas o menos asi /historicos/ idhistorico idaccion detalles fecha en esta tabla se va guardando la acciones que ...
  #1 (permalink)  
Antiguo 28/06/2011, 14:01
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Duda con consulta con ferchas.

Hola tengo una tabla que se ve mas o menos asi

/historicos/

idhistorico
idaccion
detalles
fecha


en esta tabla se va guardando la acciones que se hacen en una aplicacion , y lo que quiero es traer las ultimas acciones de todos los dias contandolas , osea no se si se pueda , necesito saber la utlima accion por dia.


saludos


PD: no se si me hice entender XD si algo explico un poco mas.
  #2 (permalink)  
Antiguo 28/06/2011, 14:44
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: Duda con consulta con ferchas.

Hola RIVERMILLOS:

Me imagino que tu campo fecha es de tipo detetime, así es que creo que puedes hacer lo siguiente:

Código MySQL:
Ver original
  1. mysql> create table historicos (idhistorico int, idaccion int,
  2.     -> detalles varchar(10), fecha datetime);
  3. Query OK, 0 rows affected (0.09 sec)
  4.  
  5.  
  6. mysql> insert into historicos values
  7.     -> (1,1, 'detalle 1', '2011-06-28 13:51:00'),
  8.     -> (2,1, 'detalle 2', '2011-06-28 14:15:00'),
  9.     -> (3,1, 'detalle 3', '2011-06-28 16:59:00'),
  10.     -> (4,1, 'detalle 4', '2011-06-27 09:22:00'),
  11.     -> (5,1, 'detalle 5', '2011-06-27 11:27:00'),
  12.     -> (6,1, 'detalle 6', '2011-06-27 12:08:00');
  13. Query OK, 6 rows affected (0.05 sec)
  14. Records: 6  Duplicates: 0  Warnings: 0
  15.  
  16. mysql> select * from historicos;
  17. +-------------+----------+-----------+---------------------+
  18. | idhistorico | idaccion | detalles  | fecha               |
  19. +-------------+----------+-----------+---------------------+
  20. |           1 |        1 | detalle 1 | 2011-06-28 13:51:00 |
  21. |           2 |        1 | detalle 2 | 2011-06-28 14:15:00 |
  22. |           3 |        1 | detalle 3 | 2011-06-28 16:59:00 |
  23. |           4 |        1 | detalle 4 | 2011-06-27 09:22:00 |
  24. |           5 |        1 | detalle 5 | 2011-06-27 11:27:00 |
  25. |           6 |        1 | detalle 6 | 2011-06-27 12:08:00 |
  26. +-------------+----------+-----------+---------------------+
  27. 6 rows in set (0.00 sec)
  28.  
  29. mysql> select H1.* from historicos H1
  30.     -> inner join
  31.     -> (select max(fecha) max_fecha from historicos group by date(fecha)) H2
  32.     -> on H1.fecha = H2.max_fecha;
  33. +-------------+----------+-----------+---------------------+
  34. | idhistorico | idaccion | detalles  | fecha               |
  35. +-------------+----------+-----------+---------------------+
  36. |           3 |        1 | detalle 3 | 2011-06-28 16:59:00 |
  37. |           6 |        1 | detalle 6 | 2011-06-27 12:08:00 |
  38. +-------------+----------+-----------+---------------------+
  39. 2 rows in set (0.03 sec)

Haz la prueba y nos comentas.

Saludos
Leo.
  #3 (permalink)  
Antiguo 28/06/2011, 15:09
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: Duda con consulta con ferchas.

muchas gracias esta bien la consulta solamente que me falto un detalle XD , que pena ,en la tabla esta el campo idUser, la consulta que colocaste trae la ultima accion de cada dia en general ,y con la que necesito es por usuarios osea todas las ultimas acciones de cada dia por usuarios ,

Código MySQL:
Ver original
  1. SELECT H1.* FROM historicos H1
  2.             INNER JOIN
  3.             (SELECT max(fecha) max_fecha FROM historicos GROUP BY idUser) H2
  4.             ON H1.fecha = H2.max_fecha;


intente hacerla asi pero no va bn , no veo como agruparla para este caso.


saludos
  #4 (permalink)  
Antiguo 28/06/2011, 15:23
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: Duda con consulta con ferchas.

Hola de nuevo...

Si toda la información es imposible ayudar... a menos que alguno de los foristas sea adivino pero como no es el caso aquí vamos de nuevo:

prueba con esto;

Código MySQL:
Ver original
  1. mysql> create table historicos (idhistorico int, idusuario int, idaccion int,
  2.     -> detalles varchar(10), fecha datetime);
  3. Query OK, 0 rows affected (0.06 sec)
  4.  
  5. mysql> insert into historicos values
  6.     -> (1,1,1, 'detalle 1', '2011-06-28 13:51:00'),
  7.     -> (2,1,1, 'detalle 2', '2011-06-28 14:15:00'),
  8.     -> (3,2,2, 'detalle 3', '2011-06-28 16:59:00'),
  9.     -> (4,2,2, 'detalle 4', '2011-06-28 09:22:00'),
  10.     -> (5,3,2, 'detalle 5', '2011-06-27 11:27:00'),
  11.     -> (6,3,2, 'detalle 6', '2011-06-27 12:08:00');
  12. Query OK, 6 rows affected (0.06 sec)
  13. Records: 6  Duplicates: 0  Warnings: 0
  14.  
  15. mysql> select * from historicos;
  16. +-------------+-----------+----------+-----------+---------------------+
  17. | idhistorico | idusuario | idaccion | detalles  | fecha               |
  18. +-------------+-----------+----------+-----------+---------------------+
  19. |           1 |         1 |        1 | detalle 1 | 2011-06-28 13:51:00 |
  20. |           2 |         1 |        1 | detalle 2 | 2011-06-28 14:15:00 |
  21. |           3 |         2 |        2 | detalle 3 | 2011-06-28 16:59:00 |
  22. |           4 |         2 |        2 | detalle 4 | 2011-06-28 09:22:00 |
  23. |           5 |         3 |        2 | detalle 5 | 2011-06-27 11:27:00 |
  24. |           6 |         3 |        2 | detalle 6 | 2011-06-27 12:08:00 |
  25. +-------------+-----------+----------+-----------+---------------------+
  26. 6 rows in set (0.00 sec)
  27.  
  28. mysql> select H1.* from historicos H1
  29.     -> inner join
  30.     -> (select idusuario, max(fecha) max_fecha from historicos
  31.     -> group by idusuario, date(fecha)) H2
  32.     -> on H1.fecha = H2.max_fecha and H1.idusuario = H2.idusuario;
  33. +-------------+-----------+----------+-----------+---------------------+
  34. | idhistorico | idusuario | idaccion | detalles  | fecha               |
  35. +-------------+-----------+----------+-----------+---------------------+
  36. |           2 |         1 |        1 | detalle 2 | 2011-06-28 14:15:00 |
  37. |           3 |         2 |        2 | detalle 3 | 2011-06-28 16:59:00 |
  38. |           6 |         3 |        2 | detalle 6 | 2011-06-27 12:08:00 |
  39. +-------------+-----------+----------+-----------+---------------------+
  40. 3 rows in set (0.00 sec)
  #5 (permalink)  
Antiguo 28/06/2011, 16:14
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 8 meses
Puntos: 15
Respuesta: Duda con consulta con ferchas.

Muchisimas gracias por tu ayuda esa me sirvio 100% , tengo que hacer otra consulta mas o menos parecida para otro reporte , la voy intertar hacer sino muestro que tengo .


saludos

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:29.