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

Timo Walther commented on FLINK-24385:
--------------------------------------

+1 for {{TRY_CAST}}. The Oracle syntax seems pretty verbose to me. Also [SQL 
Server|https://docs.microsoft.com/en-us/sql/t-sql/functions/try-cast-transact-sql?view=sql-server-ver15]
 is offering this.

> Add TRY_CAST function to be able to handle errors
> -------------------------------------------------
>
>                 Key: FLINK-24385
>                 URL: https://issues.apache.org/jira/browse/FLINK-24385
>             Project: Flink
>          Issue Type: Improvement
>          Components: Table SQL / API
>            Reporter: Marios Trivyzas
>            Priority: Major
>
> Currently, *CAST* is returning null when the conversion requested fails, 
> whereas normally in SQL it would just throw an error. Maybe it would be 
> better to change the implementation of *CAST* to throw errors on failed 
> conversions, and introduce *TRY_CAST* which would return null in such cases. 
> Then with a simple wrapping of a *TRY_CAST* expression with *COALESCE* the 
> user can also use an alternative default value to be returned instead of 
> null. e..g:
> {{}}{{SELECT COALESCE(TRY_CAST(col1 AS INT),  -1) FROM test}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to