[ 
https://issues.apache.org/jira/browse/ASTERIXDB-3615?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ian Maxon updated ASTERIXDB-3615:
---------------------------------
    Labels: triaged  (was: )

> Implement LPAD and RPAD Function
> --------------------------------
>
>                 Key: ASTERIXDB-3615
>                 URL: https://issues.apache.org/jira/browse/ASTERIXDB-3615
>             Project: Apache AsterixDB
>          Issue Type: Task
>          Components: COMP - Compiler, FUN - Functions, RT - Runtime
>            Reporter: Janhavi Tripurwar
>            Assignee: Janhavi Tripurwar
>            Priority: Major
>              Labels: triaged
>
> Add {{LPAD}} *{{}}* {{and RPAD}}Β string functions to support left and right 
> padding up to a target codepoint length. Functions must handle Unicode 
> characters correctly.
> {{*LPAD(input_str, length, pad_str)*}} 
> Returns a new string by prepending {{pad_str}} to {{input_str}} until it 
> reaches {{length}} Unicode codepoints. If {{input_str}} exceeds 
> {{{}length{}}}, it is truncated from the right.
> Example:
> {code:java}
> select lpad('asterix', 11, '$&^'), lpad('πŸ‘©β€πŸ‘©β€πŸ‘§β€', 2, '$'), lpad('πŸ‘©β€πŸ‘©β€πŸ‘§β€', 10, 
> 'πŸ‘©β€πŸ‘©β€πŸ‘§β€πŸ‘¦'), lpad(null, 4, '%%');{code}
> Result:
> {code:java}
> { $1: "$&^$asterix", $2: "πŸ‘©β€", $3: "πŸ‘©β€πŸ‘©β€πŸ‘©β€πŸ‘©β€πŸ‘§β€", $4: null }{code}
> {{*RPAD(input_str, length, pad_str)*}}
> Returns a new string by appending {{pad_str}} to {{input_str}} until it 
> reaches {{length}} Unicode codepoints. If {{input_str}} exceeds 
> {{{}length{}}}, it is truncated from the right.
> Example:
> {code:java}
> select rpad('asterix', 11, '$&^'), rpad('πŸ‘©β€πŸ‘©β€πŸ‘§β€', 2, '$'), rpad('πŸ‘©β€πŸ‘©β€πŸ‘§β€', 10, 
> 'πŸ‘©β€πŸ‘©β€πŸ‘§β€πŸ‘¦'), rpad(null, 4, '%%'){code}
> {code:java}
> { $1: "asterix$&^$", $2: "πŸ‘©β€", $3: "πŸ‘©β€πŸ‘©β€πŸ‘§β€πŸ‘©β€πŸ‘©β€", $4: null }{code}



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

Reply via email to