[ https://issues.apache.org/jira/browse/FLINK-35987?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17871974#comment-17871974 ]
Dylan He commented on FLINK-35987: ---------------------------------- [~lincoln.86xy] I've noticed that the {{OrInputTypeStrategy}} forcibly sets {{throwOnFailure}} of its child strategies to {{{}false{}}}, which means range checking during compile phase fail to throw error messages. Instead, it only throws an error with only expected function signature in {{{}OrInputTypeStrategy{}}}, lacking the range checking information. Consequently, we have two alternatives: either abandon compile-phase range checking or forego support for BINARY_STRING to maintain range checking. What do you think would be a better approach, or is there another feasible solution? > Add ELT function > ---------------- > > Key: FLINK-35987 > URL: https://issues.apache.org/jira/browse/FLINK-35987 > Project: Flink > Issue Type: Sub-task > Components: Table SQL / API > Reporter: Dylan He > Assignee: Dylan He > Priority: Major > Labels: pull-request-available > > Add ELT function. > ---- > Returns the {{index}}-th expression. > Example: > {code:sql} > > SELECT ELT(1, 'scala', 'java'); > scala > {code} > Syntax: > {code:sql} > ELT(index, expr...) > {code} > Arguments: > * {{index}}: An INTEGER expression. > * {{expr}}: A STRING or BINARY expression. One expr is required as least. > Returns: > The result has the type of the least common type of all {{expr}}. > {{index}} must be between 1 and the number of {{expr}}. Otherwise, the > function returns an error. > See also: > * > [Spark|https://spark.apache.org/docs/3.5.1/sql-ref-functions-builtin.html#string-functions] > * > [Databricks|https://docs.databricks.com/en/sql/language-manual/functions/elt.html] > * > [MySQL|https://dev.mysql.com/doc/refman/8.4/en/string-functions.html#function_elt] -- This message was sent by Atlassian Jira (v8.20.10#820010)