Обсуждение: 16beta2 SQL parser: different defaults on absent_on_null
While adapting a Java implementation of the SQL parser, I noticed that in structures JsonArrayAgg, JsonArrayConstructor, JsonArrayQueryConstructor and JsonObjectConstrutor, the absent_on_null field defaults to TRUE. But in JsonObjectAgg, absent_on_null defaults to FALSE. Is that intentionally? Regards, Martin.
> On 14 Jul 2023, at 07:53, Martin Butter <martin.butter@splendiddata.com> wrote: > While adapting a Java implementation of the SQL parser, I noticed that in structures JsonArrayAgg, JsonArrayConstructor,JsonArrayQueryConstructor and JsonObjectConstrutor, the absent_on_null field defaults to TRUE. > But in JsonObjectAgg, absent_on_null defaults to FALSE. > Is that intentionally? I would say so, an empty NULL|ABSENT ON NULL clause for arrays is defined as true, while for objects it's defined as false (which is shared between both json_object() and json_objectagg()). -- Daniel Gustafsson
Hello Daniel,
Thanks for the explanation, it sounds reasonable. I'm glad it is not a bug.
Regards,
Martin.
On 14/07/2023 10:29, Daniel Gustafsson wrote:
On 14 Jul 2023, at 07:53, Martin Butter <martin.butter@splendiddata.com> wrote:While adapting a Java implementation of the SQL parser, I noticed that in structures JsonArrayAgg, JsonArrayConstructor, JsonArrayQueryConstructor and JsonObjectConstrutor, the absent_on_null field defaults to TRUE. But in JsonObjectAgg, absent_on_null defaults to FALSE. Is that intentionally?I would say so, an empty NULL|ABSENT ON NULL clause for arrays is defined as true, while for objects it's defined as false (which is shared between both json_object() and json_objectagg()). -- Daniel Gustafsson
--
Martin Butter
Developer
Splendid Data Nederland B.V.
Binnenhof 62A
1412 LC NAARDEN
T: +31 (0)85 773 19 99
M: +31 (0)6 226 946 62
E: martin.butter@splendiddata.com
http://www.splendiddata.com/
Developer
Splendid Data Nederland B.V.
Binnenhof 62A
1412 LC NAARDEN
T: +31 (0)85 773 19 99
M: +31 (0)6 226 946 62
E: martin.butter@splendiddata.com
http://www.splendiddata.com/