Brandon Aiken wrote:
> SELECT (end_time - interval '00:00:05') AS work_timestamp FROM mytable;
No, that will subtract 5 seconds, not 5 milliseconds. Just use subtract
'0.005 seconds'::interval:
select now(), now()-'0.005 seconds'::interval;
now | ?column?
-------------------------------+-------------------------------
2006-10-17 14:11:59.805446-07 | 2006-10-17 14:11:59.800446-07
Cheers,
Steve
>
> --
> Brandon Aiken
> CS/IT Systems Engineer
>
> -----Original Message-----
> From: pgsql-novice-owner@postgresql.org
> [mailto:pgsql-novice-owner@postgresql.org] On Behalf Of Lane Van Ingen
> Sent: Tuesday, October 17, 2006 2:33 PM
> To: pgsql-novice@postgresql.org
> Subject: [NOVICE] How to Substract Milliseconds from A timestamp(3)
> Field
>
> In PLPGSQL, does anyone know how to subtract MILLISECONDS from a field
> defined as timestamp(3), yielding another field defined as timestamp(3)?
>
> Have been trying interval, and conversion functions but no luck.
>
> Example: '2006-10-17 14:23:28.951'; subtract 5 milliseconds from a field
>
> called mytable.end_time, and return the results to a field named
> work_timestamp.
>
> work_timestamp := ????