SQL - Select algo dificil

 
Vista:

Select algo dificil

Publicado por Vanessa (2 intervenciones) el 12/06/2006 18:31:16
Hola a todos.
Disculpen en primer lugar si mi pregunta es algo sencilla pero es que de
verdad no he podido hacer lo que quiero.

Esta es la situación:
tengo una tabla en donde tengo los siguientes campos:
producto, almacen, fecha y precio.
En estas tablas pueden haber registros como los siguientes:

1 - 01 - 01/01/2006 - 1000
1 - 02 - 01/02/2006 - 2000
2 - 01 - 01/02/2006 - 1500
3 - 01 - 01/05/2006 - 5000
3 - 02 - 01/06/2006 - 5500
3 - 03 - 10/06/2006 - 6000

El orden de las columnas es producto, almacen, fecha y precio.
Lo que necesito hacer es obtener el precio que tiene cada producto de
acuerdo a su fecha más vieja, es decir, de acuerdo a lo que quiero el select
me debería devolver los siguientes registros:

1 - 01 - 01/01/2006 - 1000
2 - 01 - 01/02/2006 - 1500
3 - 01 - 01/05/2006 - 5000

Como ven ahí tendría el precio de cada producto para su fecha más vieja.
Esto es lo que no he podido hacer y creanme que he hecho de todo, he usado
subconsultas pero nada no he podido dar con la solución, espero que ustedes
me puedan ayudar.

Haciendo algo así obtendría la fecha más vieja pero y cómo obtengo su precio?
SELECT producto, MIN(fecha)
FROM tabla
GROUP BY producto

Estoy utilizando un GROUP BY por lo tanto no encuentro la manera de obtener
el precio para esa fecha.
Espero haberme explicado.

Saludos a todos y gracias por su tiempo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Select algo dificil

Publicado por Juan (23 intervenciones) el 12/06/2006 18:45:10
Y le agregaste el campo costo a la consulta?

SELECT producto, MIN(fecha), precio
FROM tabla
GROUP BY producto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Select algo dificil

Publicado por Vanessa (2 intervenciones) el 12/06/2006 19:13:19
No se puede hacer eso, recuerda que estoy usando la clausula Group By por lo tanto el campo precio tendría que estar en una función de agregado como Sum por ejemplo, y de esa forma no obtendría los resultados deseados.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Select algo dificil

Publicado por Isaías (5072 intervenciones) el 12/06/2006 20:15:53
¿Y esto?

SELECT PRODUCTO, FECHA, PRECIO FROM TuTabla tt JOIN(
SELECT producto, MIN(fecha)
FROM tabla
GROUP BY producto) as X ON tt.PRODUCTO = X.PRODUCTO AND tt.FECHA = x.FECHA

¿Funciona?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar