Skip to main content

PAD Function

Pads string values to be a specified minimum length by adding a designated character to the left or right end of the string. Returned value is of String type.

If an input value is longer than the minimum length, no change is made to the string. If you need to fit the string to be a specific length, you can use the LEFT, RIGHT, or SUBSTRING functions.

Tip

You can apply the following strings after you have applied padding to ensure all values are of the same length.

Wrangle vs. SQL: This function is part of Wrangle, a proprietary data transformation language. Wrangle is not SQL. For more information, see Wrangle Language.

Basic Usage

Column reference example:

pad(Whse_Nbr, 6, '0', left)

Output: Returns a value of a minimum of six characters in length. For input values that are shorter, the character 0 is added to the left side of the string.

String literal example:

pad('My Name', 10, '!', right)

Output: Returns the string: My Name!!!!.

Syntax and Arguments

pad(string_val,string_length,pad_string,pad_side)

Argument

Required?

Data Type

Description

string_val

Y

string

Name of the column, function returning string values, or string literal to be applied to the function

string_length

Y

integer (positive)

Minimum number of characters in the output string.

pad_string

N

string

String, column reference, or function returning a string to apply to strings that are less than the minimum length. Default is whitespace.

pad_side

N

enum

  • left - any padding is applied to the left side of the string (default)

  • right - any padding is applied to the right side of the string

For more information on syntax standards, see Language Documentation Syntax Notes.

string_val

Name of the column, function returning a string, or string constant to be padded.

  • Missing string or column values generate missing string results.

  • String constants must be quoted ('Hello, World').

  • Multiple columns and wildcards are not supported.

Usage Notes:

Required?

Data Type

Example Value

Yes

String literal or column reference

myColumn

string_length

Minimum length of the generated string. Value is padded to this length at a minimum.

Note

For input string values that are longer than the minimum string length, no padding is applied.

  • Negative values have no effect on the input string.

  • References to columns of integer data type are not supported.

Usage Notes:

Required?

Data Type

Example Value

Yes

Integer (non-negative)

5

pad_string

The string of one or more characters that are used to pad input strings. If no value is provided, the default pad string is a single whitespace character.

Input values can be a string literal, a function returning a string, or a column containing strings.

Multi-character pad string behaviors:

When the pad string contains multiple characters, the behaviors are different depending on the side on which the string is padded:

Function

Output Value

pad('12', 4, 'abc', left)

bc12

pad('12', 4, 'abc', right)

12ab

pad('12', 6, 'abc', left)

cabc12

pad('12', 6, 'abc', right)

12abca

Usage Notes:

Required?

Data Type

Example Value

Yes

String literal, function returning a string, or column reference

'X'

pad_side

An enumerated value used to determine the side of the string to which any padding is applied:

Value

Description

left

Any padding is applied to the left side. This is the default value if not specified.

right

Any padding is applied to the right side.

Usage Notes:

Required?

Data Type

Example Value

No

One of the following: left or right

left

Examples

Tip

For additional examples, see Common Tasks.

Example - Numeric identifiers

In the following example, a table containing four-character product identifiers and product names has been imported into Designer Cloud Powered by Trifacta Enterprise Edition. Unfortunately, these product identifiers are numeric in structure and are therefore interpreted by Designer Cloud Powered by Trifacta Enterprise Edition as integer values during import. The leading zeroes are dropped for some of the values, while the latter rows in the table contain fully defined numeric values.

Source:

prodId

prodName

1

Our First Product

2

Our Second Product

3

Our First Product v2

1001

A New Product Line

1002

A New Product Line v2

Transformation:

The first step is to convert the product identifiers to string values:

Transformation Name

Change column data type

Parameter: Columns

prodId

Parameter: New type

'String'

Then, you can apply the character 0 as padding to the left of these strings, so that all values are four characters in length at a minimum:

Transformation Name

Edit column with formula

Parameter: Columns

ProdId

Parameter: Formula

pad(prodId,4,'0',left)

Results:

prodId

prodName

0001

Our First Product

0002

Our Second Product

0003

Our First Product v2

1001

A New Product Line

1002

A New Product Line v2