New versions: Dev (3.16) | Latest (3.15) | 3.14 | 3.13 | 3.12 | 3.11 | 3.10 | 3.9 | 3.8 | Old versions: 3.7 | 3.6 | 3.5 | 3.4 | 3.3

LPAD

Applies to ✅ Open Source Edition   ✅ Express Edition   ✅ Professional Edition   ✅ Enterprise Edition

The LPAD() pads a string at the left end. See also RPAD.

SELECT lpad('hello', 10, '.');
create.select(lpad(val("hello"), 10, '.')).fetch();

The result being

+------------+
| lpad       |
+------------+
| .....hello |
+------------+

Dialect support

This example using jOOQ:

lpad(val("hello"), 10, '.')

Translates to the following dialect specific expressions:

-- ACCESS
(replace(space(10 - len('hello')), ' ', '.') & 'hello')

-- ASE
(replicate(
  '.',
  (10 - char_length('hello'))
) || 'hello')

-- AURORA_MYSQL, AURORA_POSTGRES, COCKROACHDB, DB2, FIREBIRD, H2, HANA, HSQLDB, INFORMIX, MARIADB, MEMSQL, MYSQL, ORACLE, 
-- POSTGRES, TERADATA, VERTICA
lpad('hello', 10, '.')

-- SQLDATAWAREHOUSE, SQLSERVER
(replicate(
  '.',
  (10 - len('hello'))
) + 'hello')

-- SQLITE
substr("replace"(hex(zeroblob(10)), '00', '.'), 1, 10 - length('hello')) || 'hello'

-- SYBASE
(repeat(
  '.',
  (10 - length('hello'))
) || 'hello')

-- BIGQUERY, DERBY, EXASOL, REDSHIFT, SNOWFLAKE, YUGABYTE
/* UNSUPPORTED */

(These are currently generated with jOOQ 3.16, see #10141), or translate your own on our website

Feedback

Do you have any feedback about this page? We'd love to hear it!

The jOOQ Logo