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

seleccionar la fecha maxima para cada insumo

Estas en el tema de seleccionar la fecha maxima para cada insumo en el foro de SQL Server en Foros del Web. Buenas yo lo que estoy necesitando es seleccionar los campos donde la fecha sea la mas grande tengo la tabla insumos con: id_insumo fecha precio ...
  #1 (permalink)  
Antiguo 22/10/2007, 17:39
 
Fecha de Ingreso: octubre-2007
Mensajes: 5
Antigüedad: 16 años, 6 meses
Puntos: 1
seleccionar la fecha maxima para cada insumo

Buenas yo lo que estoy necesitando es seleccionar los campos donde la fecha sea la mas grande

tengo la tabla insumos con:

id_insumo fecha precio
AREN-1234 22/10/2007 10
AREN-1234 23/10/2007 15
AREN-1111 24/10/2007 18
AREN-1111 27/10/2007 20


la idea es que el resultado de la consulta sea

id_insumo fecha precio
AREN-1234 23/10/2007 15
AREN-1111 27/10/2007 20

gracias adelantadas
  #2 (permalink)  
Antiguo 22/10/2007, 17:54
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
Re: seleccionar la fecha maxima para cada insumo

Esto debe darte el resultado que buscas

SELECT id_insumo, Max(fecha) as fecha, precio
FROM insumos
GROUP BY id_insumo, precio
  #3 (permalink)  
Antiguo 22/10/2007, 18:05
 
Fecha de Ingreso: octubre-2007
Mensajes: 5
Antigüedad: 16 años, 6 meses
Puntos: 1
Re: seleccionar la fecha maxima para cada insumo

no me, me devuelve esto:


id_insumo fecha precio

AREN-1234 10/22/2007 10
AREN-1111 10/25/2007 18
AREN-1234 10/23/2007 12
AREN-1111 10/27/2007 20
  #4 (permalink)  
Antiguo 22/10/2007, 18:07
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 5 meses
Puntos: 8
Re: seleccionar la fecha maxima para cada insumo

.. o esta..

SELECT i.id_insumo, i.fecha, i.precio
FROM insumos i
INNER JOIN
( SELECT id_insumo , max(t.fecha) as fecha FROM insumos GROUP BY id_insumo ) j
ON i.id_Insumo = j.id_insumo AND i.fecha = j.fecha
  #5 (permalink)  
Antiguo 22/10/2007, 18:13
 
Fecha de Ingreso: octubre-2007
Mensajes: 5
Antigüedad: 16 años, 6 meses
Puntos: 1
Re: seleccionar la fecha maxima para cada insumo

si con esa me funciono perfecto solo que tuve que hacerla asi:


SELECT i.id_insumo, i.fecha, i.precio
FROM insumos i
INNER JOIN
( SELECT id_insumo , max(insumos.fecha) as fecha
FROM insumos GROUP BY id_insumo ) j
ON i.id_Insumo = j.id_insumo AND i.fecha = j.fecha

muchisimas gracias
  #6 (permalink)  
Antiguo 22/10/2007, 18:28
 
Fecha de Ingreso: octubre-2007
Mensajes: 5
Antigüedad: 16 años, 6 meses
Puntos: 1
Re: seleccionar la fecha maxima para cada insumo

otra pregunta si puede ser jeje

tengo la tabla insumos que tiene:

id_insumo - descripcion - unidad - cantidad

la tabla insumos_precio:

id_insumo - fecha - precio

la tabla insumos_proveedor con:

id_insumo - ruc

y la tabla proveedores con:

ruc - nombre

quiero que me liste

id_insumo - descripcion - proveedor - cantidad - unidad - precio - fecha

..:: SOLUCIONADO ::.. Por si a alguien le sirve


SELECT insumos.id_insumo as Codigo,descripcion as Descripcion,
nombre as Proveedor,cantidad as Cantidad,unidad as Unidad,
i.fecha as Vigencia, i.precio as Precio
FROM insumos ,insumos_proveedor,proveedores,insumos_precio i
INNER JOIN ( SELECT id_insumo , max(insumos_precio.fecha) as fecha
FROM insumos_precio GROUP BY id_insumo ) j
ON i.id_Insumo = j.id_insumo AND i.fecha = j.fecha
where insumos.id_insumo=insumos_proveedor.id_insumo
AND insumos_proveedor.ruc=proveedores.ruc
AND insumos.id_insumo=i.id_insumo
GROUP BY insumos.id_insumo,descripcion,nombre,cantidad,unid ad,i.fecha,i.precio

..:: SOLUCIONADO ::.

Última edición por mpriet; 22/10/2007 a las 18:48 Razón: TERMINADO
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 18:20.