Re: Consulta SQL

From: Guillermo Schulman <gschulman_ml(at)yahoo(dot)com(dot)ar>
To: GUSTAVO MARTIN OCAMPO <gocampo79(at)hotmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Consulta SQL
Date: 2004-07-13 19:17:55
Message-ID: 40F43563.7000003@yahoo.com.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Suponiendo que tenés una tabla más o menos así:

tiempo | posicion
---------------------
611,80 | 1
614,40 | 2
624,50 | 3
647,60 | 4

el query sería:
SELECT
t1.posicion,
t1.tiempo as "Tiempo",
t1.tiempo - t2.tiempo as "Diferencia con anterior"
FROM mitabla t1
LEFT OUTER JOIN mitabla t2 ON t2.posicion +1 = t1.posicion ;

y obtendrás:

posicion | Tiempo | Diferencia con anterior
----------+--------+-------------------------
1 | 611.80 |
2 | 614.40 | 2.60
3 | 624.50 | 10.10
4 | 647.60 | 23.10

GUSTAVO MARTIN OCAMPO wrote:

> Gracias igual por responder guillermo...
> en verdad, la situacion es esta..tengo una tabla donde voy almacenando
> tiempos realizados por cada automovil que realiza una prueba
> determinada en un rally..
> lo que quiero hacer es calcular la diferencia de tiempo entre el
> actual y el primero y entre el actual y el anterior.
> La diferencia entre el actual y el primero ya la tengo, pero no puedo
> hacer entre el actual y el anterior..
> en forma mas grafica, asi
> tiempo | dif_con_primero | dif_con_anterior
> -----------------------------------------------------------------------
> 611,80 | 0,00 | 0,00
> 614,40 | 2,60 | 2,60
> 624,50 | 12,70 | 10,10
> 647,60 | 35,80 | 0,90
>
>
> Bueno.. no se si me explico
> Gracias
>
>
>> From: Guillermo Schulman <gschulman_ml(at)yahoo(dot)com(dot)ar>
>> To: GUSTAVO MARTIN OCAMPO <gocampo79(at)hotmail(dot)com>
>> CC: pgsql-es-ayuda(at)postgresql(dot)org
>> Subject: Re: [pgsql-es-ayuda] Consulta SQL
>> Date: Tue, 13 Jul 2004 11:19:13 -0300
>>
>> No me queda muy claro lo que quieres hacer. Supongo que esto puede
>> ayudarte:
>>
>> SELECT t1.foo, t2.foo
>> FROM mitabla t1, mitabla t2
>> WHERE t1.foo=t2.foo +1;
>>
>> Si detallas un poco mejor la situación quizás te pueda dar una ayuda
>> más precisa.
>>
>> GUSTAVO MARTIN OCAMPO wrote:
>>
>>> Hola lista... tengo una tabla de la forma..
>>> foo
>>> -----
>>> 1
>>> 2
>>> 3
>>> 4
>>> 5
>>> 6
>>> mi pregunta es si por medio de una consulta SQL se puede obtener
>>> otra columna pero con la resta del la fila actual menos la anterior..
>>> o sea, 2-1....3-2.....4-3.....5-4.......6-5
>>> Gracias
>>>
>>> _________________________________________________________________
>>> Charla con tus amigos en línea mediante MSN Messenger:
>>> http://messenger.latam.msn.com/
>>>
>>>
>>> ---------------------------(end of
>>> broadcast)---------------------------
>>> TIP 4: No hagas 'kill -9' a postmaster
>>> -(end of broadcast)---------------------------
>>> TIP 4: No hagas 'kill -9' a postmaster
>>>
>>
>>
>>
>> ---------------------------(end of broadcast)---------------------------
>> TIP 7: no olvides aumentar la configuración del "free space map"
>
>
> _________________________________________________________________
> MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: puedes desuscribirte de todas las listas simultáneamente
> (envíe "unregister SuDirecciónDeCorreo" a majordomo(at)postgresql(dot)org)
> ultáneamente
> (envíe "unregister SuDirecciónDeCorreo" a majordomo(at)postgresql(dot)org)
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Martin figueroa salazar 2004-07-13 19:30:47 libpq
Previous Message Fernando Papa 2004-07-13 19:00:00 Re: Hora