ayuda con query

05/07/2006 - 16:08 por Mennegguzzi | Informe spam
Hola a todos, les hago la siguiente consulta:

tengo una tabla similar a la suguiente:

fecha precio
14/02/2005 10
23/04/2005 10.25
27/09/2005 9.80
02/02/2006 10.10
04/05/2006 9.76
03/06/2006 10.05

es una tabla donde voy guardando las variaciones de precio de los productos,

tengo que armar una query que me dé el precio que tenía a una fecha
determinada

o sea, si le paso como parámetro 30/11/2005, me debería devolver 9.80, si le
paso 15/03/2005 me debería dar 10

se entienden los ejemplos ?

agradecería si alguien pudiera ayudarme

saludos y muchas gracias de antemano

Pablo

Preguntas similare

Leer las respuestas

#1 Maxi
05/07/2006 - 16:15 | Informe spam
Hola, eso lo puedes resolver con un MAX , no veo que tengas algun
identificador de la transaccion, solo fechas con lo cual puede ser mas
complicado pero..

select t1.precio from tabla t1 inner join
(Select max(fecha) as fecha from tabla where fecha <=@fecha_entrada) t2 on
t1.fecha = t2.fecha





Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Mennegguzzi" escribió en el mensaje
news:%23h%
Hola a todos, les hago la siguiente consulta:

tengo una tabla similar a la suguiente:

fecha precio
14/02/2005 10
23/04/2005 10.25
27/09/2005 9.80
02/02/2006 10.10
04/05/2006 9.76
03/06/2006 10.05

es una tabla donde voy guardando las variaciones de precio de los
productos,

tengo que armar una query que me dé el precio que tenía a una fecha
determinada

o sea, si le paso como parámetro 30/11/2005, me debería devolver 9.80, si
le paso 15/03/2005 me debería dar 10

se entienden los ejemplos ?

agradecería si alguien pudiera ayudarme

saludos y muchas gracias de antemano

Pablo




Respuesta Responder a este mensaje
#2 Alejandro Mesa
05/07/2006 - 16:46 | Informe spam
Trata:

select a.precio
from t1 as a
where a.fecha = (select max(b.fecha) from t1 as b where b.fecha <= @fecha)
go

select top 1 precio
from t1
where fecha <= @fecha
order by fecha desc
go


AMB

"Mennegguzzi" wrote:

Hola a todos, les hago la siguiente consulta:

tengo una tabla similar a la suguiente:

fecha precio
14/02/2005 10
23/04/2005 10.25
27/09/2005 9.80
02/02/2006 10.10
04/05/2006 9.76
03/06/2006 10.05

es una tabla donde voy guardando las variaciones de precio de los productos,

tengo que armar una query que me dé el precio que tenía a una fecha
determinada

o sea, si le paso como parámetro 30/11/2005, me debería devolver 9.80, si le
paso 15/03/2005 me debería dar 10

se entienden los ejemplos ?

agradecería si alguien pudiera ayudarme

saludos y muchas gracias de antemano

Pablo





Respuesta Responder a este mensaje
#3 Mennegguzzi
05/07/2006 - 16:51 | Informe spam
Gracias Maxi, anduvo perfecto

saludos

Pablo


"Maxi" escribió en el mensaje
news:eTO%
Hola, eso lo puedes resolver con un MAX , no veo que tengas algun
identificador de la transaccion, solo fechas con lo cual puede ser mas
complicado pero..

select t1.precio from tabla t1 inner join
(Select max(fecha) as fecha from tabla where fecha <=@fecha_entrada) t2 on
t1.fecha = t2.fecha





Salu2
Maxi [MVP SQL SERVER]
www.sqlgurus.org


"Mennegguzzi" escribió en el mensaje
news:%23h%
Hola a todos, les hago la siguiente consulta:

tengo una tabla similar a la suguiente:

fecha precio
14/02/2005 10
23/04/2005 10.25
27/09/2005 9.80
02/02/2006 10.10
04/05/2006 9.76
03/06/2006 10.05

es una tabla donde voy guardando las variaciones de precio de los
productos,

tengo que armar una query que me dé el precio que tenía a una fecha
determinada

o sea, si le paso como parámetro 30/11/2005, me debería devolver 9.80, si
le paso 15/03/2005 me debería dar 10

se entienden los ejemplos ?

agradecería si alguien pudiera ayudarme

saludos y muchas gracias de antemano

Pablo








Respuesta Responder a este mensaje
#4 Mennegguzzi
05/07/2006 - 16:52 | Informe spam
Gracias Alejandro, había ya probado lo respuesta de Maxi y anduvo de diez,
ahora voy a analizar la tuya, creo que son parecidas

saludos y nuevamente muchas gracias por la ayuda

Pablo


"Alejandro Mesa" escribió en el
mensaje news:
Trata:

select a.precio
from t1 as a
where a.fecha = (select max(b.fecha) from t1 as b where b.fecha <= @fecha)
go

select top 1 precio
from t1
where fecha <= @fecha
order by fecha desc
go


AMB

"Mennegguzzi" wrote:

Hola a todos, les hago la siguiente consulta:

tengo una tabla similar a la suguiente:

fecha precio
14/02/2005 10
23/04/2005 10.25
27/09/2005 9.80
02/02/2006 10.10
04/05/2006 9.76
03/06/2006 10.05

es una tabla donde voy guardando las variaciones de precio de los
productos,

tengo que armar una query que me dé el precio que tenía a una fecha
determinada

o sea, si le paso como parámetro 30/11/2005, me debería devolver 9.80, si
le
paso 15/03/2005 me debería dar 10

se entienden los ejemplos ?

agradecería si alguien pudiera ayudarme

saludos y muchas gracias de antemano

Pablo





email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida