From: | Shay Rojansky <roji(at)roji(dot)org> |
---|---|
To: | "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com> |
Cc: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: JSON_VALUE() behavior when RETURNING bytea (expected base64 decoding) |
Date: | 2025-03-06 00:54:35 |
Message-ID: | CADT4RqDDJN4t8A8Za4yhJeLmZJMeHES5aZvW2W4EpWnDd6U0FQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
>
>
>> SELECT JSON_VALUE(jsonb '"AQID"', '$' RETURNING bytea); -- Expected
>> 0x010203, got AQID
>>
>
> I get \x41514944 which is precisely what I would expect since it what this
> query results in as well:
>
> select 'AQID'::bytea;
>
If the behavior of RETURNING is meant to be identical to that of simply
applying a cast, is there any actual advantage in using JSON_VALUE with
RETURNING? In other words, why not just do JSON_VALUE(json '"AQID"',
'$')::bytea instead of using RETURNING? I thought the point was precisely
for RETURNING to be able to perform JSON-specific conversions (e.g. take
into account that the base64 is being converted from a *JSON* string, and
therefore apply base64 decoding to it).
From | Date | Subject | |
---|---|---|---|
Next Message | David G. Johnston | 2025-03-06 01:11:04 | Re: JSON_VALUE() behavior when RETURNING bytea (expected base64 decoding) |
Previous Message | Greg Sabino Mullane | 2025-03-06 00:51:50 | Re: JSON_VALUE() behavior when RETURNING bytea (expected base64 decoding) |