Search Postgresql Archives

Question on how to use to_timestamp()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I'm trying to convert a series of ISO8601 strings into TIMESTAMPs for use with a function:

CREATE OR REPLACE FUNCTION v1_nexus_vlan_count(id TEXT, start_time TIMESTAMP, end_time TIMESTAMP)
RETURNS TEXT AS $$
SELECT jsonb_pretty(jsonb_agg(row_to_json(datapoints))) AS data_array FROM (
SELECT
    data->>'timestamp' AS collection_time,
    data->'data'->'vlans'->>'available' AS available,
    data->'data'->'vlans'->>'total' AS total,
    data->'data'->'vlans'->>'used' AS used
FROM
    gathered_data
WHERE
    data->>'id'=$1 AND
    to_timestamp(data->>'timestamp', 'YYYY-MM-DDTHH24:MI:SSZ')>=$2 AND
    to_timestamp(data->>'timetsamp', 'YYYY-MM-DDTHH24:MI:SSZ')<=$3
ORDER BY
    to_timestamp(data->>'timestamp', 'YYYY-MM-DDTHH24:MI:SSZ')) AS datapoints $$
LANGUAGE SQL;

The conversions for to_timestamp() seems to be my problem. I keep getting an error:

# SELECT to_timestamp('2016-01-01T00:00:00Z', 'YYYY-MM-DDTHH24:MI:SSZ');

ERROR:  invalid value ":0" for "MI"
DETAIL:  Value must be an integer.
Time: 1.016 ms

Could anyone suggest what it is that I might be doing wrong here?

Thanks in advance!!!

Deven

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux