Re: Get the difference between two timestamp cells but in a special format in PostgreSQL
От | Adrian Klaver |
---|---|
Тема | Re: Get the difference between two timestamp cells but in a special format in PostgreSQL |
Дата | |
Msg-id | 558C803F.5080404@aklaver.com обсуждение исходный текст |
Ответ на | Get the difference between two timestamp cells but in a special format in PostgreSQL (litu16 <litumelendez@gmail.com>) |
Ответы |
Re: Get the difference between two timestamp cells but in a special
format in PostgreSQL
|
Список | pgsql-general |
On 06/24/2015 09:11 PM, litu16 wrote: > This is my table... > > <http://postgresql.nabble.com/file/n5855074/screenshot.jpg> > > I would like to get the time difference between 'time_type = Lap' AND > 'time_type = Start' in order to fill 'time_elapse'. Im almost sure that this > code works... > > * CREATE OR REPLACE FUNCTION timediff() > RETURNS trigger AS > $BODY$ > DECLARE > t_ix real; > > BEGIN > IF NEW.time_type = 'Lap' THEN > SELECT t.time FROM table_ebscb_spa_log04 t WHERE t.fn_name = > NEW.fn_name AND t.time_type = 'Start' ORDER BY t.stmtserial DESC LIMIT 1 > INTO t_ix; > IF NOT FOUND THEN > RAISE EXCEPTION USING MESSAGE = 'There is not any previous > row...'; > ELSE > NEW.time_elapse := t_ix - NEW.time; > END IF; > END IF; > return NEW; > END > $BODY$ > LANGUAGE plpgsql VOLATILE* > > But I don't know how to get the time difference between the two timestamps > cells in a special format: (years/months/days > hours:minutes:seconds:miliseconds) like this... Well subtracting two timestamps gets you an interval: http://www.postgresql.org/docs/9.4/interactive/functions-datetime.html Table 9-27. Date/Time Operators which you can convert: http://www.postgresql.org/docs/9.4/interactive/functions-formatting.html to_char(interval, text) text convert interval to string to_char(interval '15h 2m 12s', 'HH24:MI:SS') so: postgres@production=# SELECT to_char(interval '15h 2m 12s', 'HH24:MI:SS'); to_char ---------- 15:02:12 (1 row) > > * 0y/0m/0d 00:00:01.001* > > Is this possible?? > Thanks Advanced. > > > > -- > View this message in context: http://postgresql.nabble.com/Get-the-difference-between-two-timestamp-cells-but-in-a-special-format-in-PostgreSQL-tp5855074.html > Sent from the PostgreSQL - general mailing list archive at Nabble.com. > > -- Adrian Klaver adrian.klaver@aklaver.com
В списке pgsql-general по дате отправления: