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

Consulta fecha mas reciente

Estas en el tema de Consulta fecha mas reciente en el foro de SQL Server en Foros del Web. Hola a todos, Tengo que realizar una consulta y no se como, necesito recuperar los registros mas modernos, pongo un ejemplo: Tengo una tabla del ...
  #1 (permalink)  
Antiguo 03/08/2009, 06:39
 
Fecha de Ingreso: agosto-2009
Mensajes: 2
Antigüedad: 14 años, 9 meses
Puntos: 0
Consulta fecha mas reciente

Hola a todos,

Tengo que realizar una consulta y no se como, necesito recuperar los registros mas modernos, pongo un ejemplo:

Tengo una tabla del siguiente estilo:

id, fecha, nombre, ciudad, pais, comentario
1, 01/01/1990, Luis, Madrid, España, comentario 1
2, 27/02/1990, Luis, Madrid, España, comentario 2
3, 01/11/1991, Luis, Lima, Peru, comentario 3


Después de realizar la consulta el resultado debería ser:

id, fecha, nombre, ciudad, pais, comentario
2, 27/02/1990, Luis, Madrid, España, comentario 2
3, 01/11/1991, Luis, Lima, Peru, comentario 3

es decir, para cada combinación de nombre, ciudad y pais necesito recuperar el comentario mas moderno.

Un saludo y gracias por adelantado
  #2 (permalink)  
Antiguo 03/08/2009, 07:47
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Respuesta: Consulta fecha mas reciente

Este tipo de consulta es clasica, ya lo he hecho muchas veces en el foro.
Isaias no tenemos un FAQ?
Código sql:
Ver original
  1. SELECT T1.*
  2. FROM tabla T1
  3. INNER JOIN (
  4.     SELECT nombre, ciudad, pais, MAX(id) [id]
  5.     FROM tabla
  6.     GROUP BY nombre, ciudad, pais
  7. ) T2 ON T1.id=T2.id
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #3 (permalink)  
Antiguo 03/08/2009, 08:34
 
Fecha de Ingreso: agosto-2009
Mensajes: 2
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Consulta fecha mas reciente

Muchisimas gracias, funcionó!!!

Una pregunta más,
¿como podría introducir el resultado que me devuelve esa consulta en otra tabla teniendo en cuenta que tendría que introducir todos los registros que me devuelve el SELECT pero fijando un valor constante?

Me explico:

Imaginemos que la sentencia SELECT devuelve lo siguiente:

id, fecha, nombre, ciudad, pais, comentario
2, 27/02/1990, Luis, Madrid, España, comentario 2
3, 01/11/1991, Luis, Lima, Peru, comentario 3



ahora yo necesito insertar esos registros en otra tabla pero dejando el campo pais con valor "Francia" constante, es decir, necesitaría insertar esto:


id, fecha, nombre, ciudad, pais, comentario
2, 27/02/1990, Luis, Madrid, Francia, comentario 2
3, 01/11/1991, Luis, Lima, Francia, comentario 3


Tengo que alimentar el INSERT con lo que me devuelve el SELECT pero haciendo esa modificación y no se me ocurre como.

Un saludo y muchisimas gracias
  #4 (permalink)  
Antiguo 03/08/2009, 09:02
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Consulta fecha mas reciente

INSERT INTO tutabla
SELECT ......................, 'Francia', comentario2 from tuconsulta
  #5 (permalink)  
Antiguo 03/08/2009, 11:10
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Respuesta: Consulta fecha mas reciente

Isaias no es asi.
Código sql:
Ver original
  1. INSERT INTO nueva_tabla
  2. SELECT T1.id, T1.fecha, T1.nombre, T1.ciudad, 'Francia' [pais], T1.comentario
  3. FROM tabla T1
  4. INNER JOIN (
  5.     SELECT nombre, ciudad, pais, MAX(id) [id]
  6.     FROM tabla
  7.     GROUP BY nombre, ciudad, pais
  8. ) T2 ON T1.id=T2.id
Te hice una pregunta mas arriba.
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #6 (permalink)  
Antiguo 03/08/2009, 12:10
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Consulta fecha mas reciente

Bueno, bueno.....no me gusta escribir toda la sentencia, misma que tu ya habias publicado, lo importante es la guia.......saludos
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 21:43.