On 05/28/2013 11:38 AM, Szymon Guz wrote:
I've found a potential bug. Why the "->" operator returns JSON instead of TEXT? It doesn't make sens for me, and the documentation doesn't inform about that.

postgres=# SELECT ('{"id": 1}'::json -> 'id')::int;
ERROR:  cannot cast type json to integer
LINE 1: SELECT ('{"id": 1}'::json -> 'id')::int;

postgres=# SELECT ('{"id": 1}'::json -> 'id')::text::int;
 int4
------
    1
(1 row)






This is not a bug. It is documented and by design.

If you want text, use the ->> operator. That's exactly what it's for.

cheers

andrew


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to