You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Julian Hyde (Jira)" <ji...@apache.org> on 2023/08/01 22:19:00 UTC

[jira] [Commented] (CALCITE-5884) Nullability of of ARRAY_TO_STRING result does not depend on third argument nullability

    [ https://issues.apache.org/jira/browse/CALCITE-5884?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17750031#comment-17750031 ] 

Julian Hyde commented on CALCITE-5884:
--------------------------------------

I agree, but can you give an example where the third argument is NULL and the result of the call is non-NULL?

> Nullability of of ARRAY_TO_STRING result does not depend on third argument nullability
> --------------------------------------------------------------------------------------
>
>                 Key: CALCITE-5884
>                 URL: https://issues.apache.org/jira/browse/CALCITE-5884
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.35.0
>            Reporter: Mihai Budiu
>            Priority: Trivial
>
> This is the current definition of the function ARRAY_TO_STRING in SqlLibraryOperators:
> {code:java}
>   /** The "ARRAY_TO_STRING(array, delimiter [, nullText ])" function. */
>   @LibraryOperator(libraries = {BIG_QUERY})
>   public static final SqlFunction ARRAY_TO_STRING =
>       SqlBasicFunction.create(SqlKind.ARRAY_TO_STRING,
>           ReturnTypes.VARCHAR_NULLABLE,
>           OperandTypes.STRING_ARRAY_CHARACTER_OPTIONAL_CHARACTER);
> {code}
> So the result is nullable if any of the arguments is nullable. However, the nullability of the last argument does not influence the result nullabillity: a NULL value for the third optional argument will not cause a NULL value to be output.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)