<< LOWER() | FB 2.1 Language Reference | MAXVALUE() >>


Available in: DSQL, PSQL

Added in: 2.1


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

Result type:' VARCHAR(32765) or BLOB


 LPAD (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 LPAD 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.


 lpad ('Hello', 12)                    -- returns ' Hello'
 lpad ('Hello', 12, '-')               -- returns '-------Hello'
 lpad ('Hello', 12, '')                -- returns 'Hello'
 lpad ('Hello', 12, 'abc')             -- returns 'abcabcaHello'
 lpad ('Hello', 12, 'abcdefghij')      -- returns 'abcdefgHello'
 lpad ('Hello', 2)                     -- returns 'He'
 lpad ('Hello', 2, '-')                -- returns 'He'
 lpad ('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
<< LOWER() | FB 2.1 Language Reference | MAXVALUE() >>