You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Timo Walther (Jira)" <ji...@apache.org> on 2021/10/01 11:41:00 UTC

[jira] [Comment Edited] (FLINK-24413) Casting to a CHAR() and VARCHAR() doesn't trim the string to the specified precision

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

Timo Walther edited comment on FLINK-24413 at 10/1/21, 11:40 AM:
-----------------------------------------------------------------

An alternative approach could be that we are only strict with CHAR and use the length for VARCHAR only a hint for data structures. For example, currently the JSON_OBJECT function return VARCHAR(2000) even though the content could be much bigger.


was (Author: twalthr):
An alternative approach could be that we are only strict with CHAR and use the length for VARCHAR only has a hint for data structures. For example, currently the JSON_OBJECT function return VARCHAR(2000) even though the content could be much bigger.

> Casting to a CHAR() and VARCHAR() doesn't trim the string to the specified precision
> ------------------------------------------------------------------------------------
>
>                 Key: FLINK-24413
>                 URL: https://issues.apache.org/jira/browse/FLINK-24413
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Table SQL / API
>            Reporter: Marios Trivyzas
>            Priority: Major
>
> *CAST**('abcdfe' AS CHAR(3))* should trim the string to 3 chars but currently returns the whole string *'abcdfe'*.
>  
> PostgreSQL and Oracle for example behave as such:
> postgres=# select '123456afas'::char(4);
>  bpchar 
>  --------
>  1234
>  (1 row)
> postgres=# select '123456afas'::varchar(5);
>  varchar 
>  ---------
>  12345
>  (1 row)



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