[ https://issues.apache.org/jira/browse/BEAM-5965?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Work on BEAM-5965 stopped by Rui Wang. -------------------------------------- > RPAD > ---- > > Key: BEAM-5965 > URL: https://issues.apache.org/jira/browse/BEAM-5965 > Project: Beam > Issue Type: Sub-task > Components: dsl-sql > Reporter: Rui Wang > Assignee: Rui Wang > Priority: Major > > RPAD(original_value, return_length[, pattern]) > Returns a value that consists of original_value appended with pattern. The > return_length is an INT64 that specifies the length of the returned value. If > original_value is BYTES, return_length is the number of bytes. If > original_value is STRING, return_length is the number of characters. > The default value of pattern is a blank space. > Both original_value and pattern must be the same data type. > If return_length is less than or equal to the original_value length, this > function returns the original_value value, truncated to the value of > return_length. For example, RPAD("hello world", 7); returns "hello w". > If original_value, return_length, or pattern is NULL, this function returns > NULL. > This function returns an error if: > return_length is negative > pattern is empty > Return type > STRING or BYTES > Examples > SELECT t, len, FORMAT("%T", RPAD(t, len)) AS RPAD FROM UNNEST([ > STRUCT('abc' AS t, 5 AS len), > ('abc', 2), > ('例子', 4) > ]); > t len RPAD > abc 5 "abc " > abc 2 "ab" > 例子 4 "例子 " > SELECT t, len, pattern, FORMAT("%T", RPAD(t, len, pattern)) AS RPAD FROM > UNNEST([ > STRUCT('abc' AS t, 8 AS len, 'def' AS pattern), > ('abc', 5, '-'), > ('例子', 5, '中文') > ]); > t len pattern RPAD > abc 8 def "abcdefde" > abc 5 - "abc--" > 例子 5 中文 "例子中文中" > SELECT FORMAT("%T", t) AS t, len, FORMAT("%T", RPAD(t, len)) AS RPAD FROM > UNNEST([ > STRUCT(b'abc' AS t, 5 AS len), > (b'abc', 2), > (b'\xab\xcd\xef', 4) > ]); > t len RPAD > b"abc" 5 b"abc " > b"abc" 2 b"ab" > b"\xab\xcd\xef" 4 b"\xab\xcd\xef " > SELECT > FORMAT("%T", t) AS t, > len, > FORMAT("%T", pattern) AS pattern, > FORMAT("%T", RPAD(t, len, pattern)) AS RPAD > FROM UNNEST([ > STRUCT(b'abc' AS t, 8 AS len, b'def' AS pattern), > (b'abc', 5, b'-'), > (b'\xab\xcd\xef', 5, b'\x00') > ]); > t len pattern RPAD > b"abc" 8 b"def" b"abcdefde" > b"abc" 5 b"-" b"abc--" > b"\xab\xcd\xef" 5 b"\x00" b"\xab\xcd\xef\x00\x00" -- This message was sent by Atlassian JIRA (v7.6.3#76005)