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.

Basic Usage

Column reference example:

set col: Whse_Nbr value: PAD(Whse_Nbr, 6, '0', left)

Output: Sets the values of the Whse_Nbr column to be a minimum of six characters in length. For column values that are shorter, the character 0 is added to the left side of the string.

String literal example:

derive type:single value:PAD('My Name', 10, '!', right)

Output: The string My Name!!!! is written to the new column.

Syntax

derive type:single value:PAD(string_val,string_length,pad_string,pad_side)

ArgumentRequired?Data TypeDescription
string_valYstringName of the column, function returning string values, or string literal to be applied to the function
string_lengthYinteger (positive)Minimum number of characters in the output string.
pad_stringNstringString, column reference, or function returning a string to apply to strings that are less than the minimum length. Default is whitespace.
pad_sideNenum
  • 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 TypeExample Value
YesString literal or column referencemyColumn

string_length

Minimum length of the generated string.

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 TypeExample Value
YesInteger (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:

FunctionOutput 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 TypeExample Value
YesString 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:

ValueDescription
leftAny padding is applied to the left side. This is the default value if not specified.
rightAny padding is applied to the right side.

Usage Notes:

Required?Data TypeExample Value
NoOne of the following: left or rightleft

Examples

Example - Numeric identifiers

In the following example, a table containing four-character product identifiers and product names has been imported into Cloud Dataprep by TRIFACTA. Unfortunately, these product identifiers are numeric in structure and are therefore interpreted by Cloud Dataprep by TRIFACTA 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:

prodIdprodName
1Our First Product
2Our Second Product
3Our First Product v2
1001

A New Product Line

1002A New Product Line v2
1003A New Product Line v3

Transform:

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

settype col: prodId 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:

set col:prodId value:PAD(prodId,4,'0',left)

Results:

prodIdprodName
0001Our First Product
0002Our Second Product
0003Our First Product v2
1001

A New Product Line

1002A New Product Line v2
1003A New Product Line v3

Was this page helpful? Let us know how we did:

Send feedback about...

Google Cloud Dataprep Documentation
Need help? Visit our support page.