If I have a select statement where I am formatting both a duration ( interval 
data type )  and timestamp ( timestamp with tz datatype ) I am getting an odd 
behavior.
Note the extra characters following the seconds in the last_update column.

ace_db=# select port_id,
             to_char(ppa.term_duration, 'HH24:MI:SS') as term_duration,
             to_char(ppa.last_update, 'YYYY-MM-DD HH:24:MI:SS' ) as last_update
          from log.peg_port_accumulator ppa;
port_id | term_duration |      last_update
---------+---------------+------------------------
       1 | 23:52:29      | 2014-10-17 11:24:44:58
      11 | 00:00:00      | 2014-10-20 09:24:15:27
       9 | 00:00:00      | 2014-10-20 09:24:16:53
       6 | 01:41:19      | 2014-10-14 01:24:50:46
       4 | 00:01:30      | 2014-10-14 01:24:52:11
       2 | 00:00:05      | 2014-10-15 09:24:32:38
(6 rows)

If I change the last_update format to 'YYYY-MM-DD HH:24:MI' I will get the 
desired result ( incorrectly ) including the seconds ???

psql -V
psql (PostgreSQL) 9.3.5

If I only select/format either the term_duration or last_update I get the 
proper results with a format string.

ace_db=# \dS+ log.peg_port_accumulator
                                        Table "log.peg_port_accumulator"
    Column     |           Type           |          Modifiers           | 
Storage | Stats target | Description
---------------+--------------------------+------------------------------+---------+--------------+-------------
port_id       | integer                  | not null                     | plain 
  |              |
orig_count    | integer                  | default 0                    | plain 
  |              |
orig_duration | interval                 | default '00:00:00'::interval | plain 
  |              |
term_count    | integer                  | default 0                    | plain 
  |              |
term_duration | interval                 | default '00:00:00'::interval | plain 
  |              |
last_update   | timestamp with time zone | default now()                | plain 
  |              |
Indexes:
    "peg_port_accumulator_pkey" PRIMARY KEY, btree (port_id)
Has OIDs: no



Seems like a bug ?


Dave Day

Reply via email to