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

ZheHu commented on CALCITE-5685:
--------------------------------

They both work on converting data types, here are some differences I can tell:
 # MSSQL CONVERT has a optional third arg called style, MySQL CONVERT only 
contains two args
 # Order of args is also different. The DataType arg in MSSQL CONVERT is 
operand[0], while in MySQL CONVERT, it's operand[1]
 # The target data types to convert are not the same, however, it seems that we 
don't need to validate.

> Support MySQL CONVERT function that works on data types
> -------------------------------------------------------
>
>                 Key: CALCITE-5685
>                 URL: https://issues.apache.org/jira/browse/CALCITE-5685
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.34.0
>            Reporter: ZheHu
>            Assignee: ZheHu
>            Priority: Minor
>
> CONVERT function in MySQL has two usage:
>  # convert(s USING transcodingName): as described in 
> [CALCITE-5664|https://issues.apache.org/jira/projects/CALCITE/issues/CALCITE-5664]
>  # convert(value, type): equivalent to CAST function that converts value to 
> specific type.
> Here are some examples:
>  * convert(150, CHAR)
>  * convert(now(), DATE)
>  * convert('9.5', DECIMAL(10, 2))
>  * convert(15, SIGNED)
>  * convert(-2, UNSIGNED)
> Noted: for CONVERT or CAST function in MySQL, they only support converting to 
> some specific data 
> types(binary、char、date、time、datetime、decimal、signed、unsigned. Moreover, the 
> last two aren't JDBC sql Types).
>  



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

Reply via email to