

 Amazon Redshift は、パッチ 198 以降、新しい Python UDF の作成をサポートしなくなります。既存の Python UDF は、2026 年 6 月 30 日まで引き続き機能します。詳細については、[ブログ記事](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)を参照してください。

# LPAD 関数および RPAD 関数
<a name="r_LPAD"></a>

これらの関数は、指定された長さに基づいて、文字列の前または後に文字を付加します。

## 構文
<a name="r_LPAD-synopsis"></a>

```
LPAD(string1, length, [ string2 ])
```

```
RPAD(string1, length, [ string2 ])
```

## 引数
<a name="r_LPAD-arguments"></a>

 *string1*   
`CHAR` 文字列、`VARCHAR` 文字列、あるいは `CHAR` または `VARCHAR` 型に暗黙的に評価される式。

 *length*   
関数の結果の長さを定義する整数。文字列の長さはバイト数ではなく文字数に基づくため、マルチバイト文字は 1 文字としてカウントされます。指定された長さより *string1* が長い場合は、(右側が) 切り捨てられます。*length* がゼロまたは負の数値である場合は、関数の結果が空の文字列になります。

 *string2*   
(オプション) *string1* の前または後に付加する 1 つ以上の文字。この引数が指定されなかった場合は、スペースが使用されます。

## 戻り型
<a name="r_LPAD-return-type"></a>

VARCHAR

## 例
<a name="r_LPAD-examples"></a>

次の例では、TICKIT サンプルデータベースの EVENT テーブルからのデータを使用します。詳細については、「[サンプルデータベース](c_sampledb.md)」を参照してください。

指定された一連のイベント名を切り捨てて 20 文字にして、20 文字に満たない名前の前にはスペースを付加するには、次の例を使用します。

```
SELECT LPAD(eventname, 20) FROM event
WHERE eventid BETWEEN 1 AND 5 ORDER BY 1;

+---------------------+
|         lpad        |
+---------------------+
|              Salome |
|        Il Trovatore |
|       Boris Godunov |
|     Gotterdammerung |
|La Cenerentola (Cind |
+-----------------------+
```

上記と同じ一連のイベント名を切り捨てて 20 文字にするが、20 文字に満たない名前の後には `0123456789` を付加するには、次の例を使用します。

```
SELECT RPAD(eventname, 20,'0123456789') FROM event
WHERE eventid BETWEEN 1 AND 5 ORDER BY 1;

+----------------------+
|         rpad         |
+----------------------+
| Boris Godunov0123456 |
| Gotterdammerung01234 |
| Il Trovatore01234567 |
| La Cenerentola (Cind |
| Salome01234567890123 |
+----------------------+
```