RPAD()

<< ROUND() | FB 2.5 Language Reference | SIGN() >>

RPAD()

Available in: DSQL, PSQL

Added in: 2.1

Changed in: 2.5 (backported to 2.1.4)

Description

Right-pads a string with spaces or with a user-supplied string until a given length is reached.

Result type: VARCHAR or BLOB

Syntax

 RPAD (str, endlen [, padstr])


  • This function fully supports text BLOBs of any length and character set.
  • If str is a BLOB, the result is a BLOB. Otherwise, the result is a VARCHAR(endlen).
  • If padstr is given and equals '' (empty string), no padding takes place.
  • If endlen is less than the current string length, the string is truncated to endlen, even if padstr is the empty string.

Important: If the external function RPAD is declared in your database, it will override the internal function. To make the internal function available, DROP or ALTER the external function (UDF).

Note: In Firebird 2.1–2.1.3, all non-BLOB results were of type VARCHAR(32765), which made it advisable to cast them to a more modest size. This is no longer the case.

Examples

 rpad ('Hello', 12)                   -- returns 'Hello '
 rpad ('Hello', 12, ')                   -- returns 'Hello------
 rpad ('Hello', 12, '')               -- returns 'Hello'
 rpad ('Hello', 12, 'abc')            -- returns 'Helloabcabca'
 rpad ('Hello', 12, 'abcdefghij')     -- returns 'Helloabcdefg'
 rpad ('Hello', 2)                    -- returns 'He'
 rpad ('Hello', 2, '-')               -- returns 'He'
 rpad ('Hello', 2, '')                -- returns 'He'

Warning: When used on a BLOB, this function may need to load the entire object into memory. Although it does try to limit memory consumption, this may affect performance if huge BLOBs are involved.

See also:
LPAD()

back to top of page
<< ROUND() | FB 2.5 Language Reference | SIGN() >>