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


Available in: DSQL, PSQL

Added in: 2.1


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

Result type: VARCHAR(32765) or BLOB


 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(32765).
  • 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).

Tip: With (VAR)CHARs, it is generally wise to CAST the result to a smaller size. The default result length of 32765 may, in combination with other output columns, lead to a block size exceeds implementation restriction error.


 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:

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