On Oct 23, 2012, at 6:17 PM, Merlin Moncure <mmonc...@gmail.com> wrote:

> On Tue, Oct 23, 2012 at 8:05 PM, Greg Hazel <gha...@gmail.com> wrote:
>> On Oct 23, 2012, at 6:03 PM, Merlin Moncure <mmonc...@gmail.com> wrote:
>> 
>>> On Tue, Oct 23, 2012 at 6:32 PM,  <gha...@gmail.com> wrote:
>>>> The following bug has been logged on the website:
>>>> 
>>>> Bug reference:      7620
>>>> Logged by:          Greg Hazel
>>>> Email address:      gha...@gmail.com
>>>> PostgreSQL version: 9.2.1
>>>> Operating system:   Amazon Linux
>>>> Description:
>>>> 
>>>> array_to_json(ARRAY['foo', 100, true]) complains because arrays can't have
>>>> mixed types, but json arrays can.
>>>> 
>>>> So, it's not possible to form a heterogeneous json array, when this is 
>>>> often
>>>> desired.
>>> 
>>> This is not really a bug because the feature is working as intended.
>>> Postgres arrays are homogonous so what you're asking really isn't
>>> possible.  You can though use row_to_json to work around:
>>> 
>>> select row_to_json(row('foo', 100, true));
>> 
>> That doesn't produce the same results.
>> 
>> Call it a feature request or a bug report, the postgres json support fails 
>> to make the json I need.
> 
> I didn't say that it did: what it does is return a javascript object
> which is only a very little bit different from an array.  For example,
> you can do jquery each() over either.  I guess if you had to have an
> array, you could do it like this:
> 
> array_to_json(ARRAY['foo'::text, 100::text, true::text])

Still not exactly the same json, since 100 and true would be quoted strings. 
I'm not parsing it with jQuery, it's a client with type expectations.

-Greg



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

Reply via email to