LPAD 関数および RPAD 関数 - Amazon Redshift

LPAD 関数および RPAD 関数

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

構文

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

引数

string1

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

length

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

string2

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

戻り型

VARCHAR

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

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