

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

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

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

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

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

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

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

 *string1*   
文字列、または文字列に評価される式 (文字列の列名など)。

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

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

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

これらの関数は VARCHAR データ型を返します。

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

指定された一連のイベント名を切り捨てて 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
(5 rows)
```

上記と同じ一連のイベント名を切り捨てて 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
(5 rows)
```