rpad()
rpad()関数は、文字列の右側にパディング文字を繰り返し付加して指定した長さの文字列を返します。
構文
rpad(STR, LENGTH[, PAD])
パラメーター
STR- 元の文字列フィールドまたは値です。文字列以外の値は文字列に変換して処理します。
LENGTH- 結果文字列の目標の長さです。1以上10240以下の整数でなければなりません。定数として指定する場合にこの範囲を外れるとパースエラーが発生します。実行時にこの範囲を外れると
nullを返します。 PAD- (省略可)右側に埋めるパディング文字列です。省略すると空白(
)を使用します。空文字列("")を指定すると空白として処理します。
説明
rpad()関数は、STR文字列の右側にPAD文字列を繰り返し付加して全体の長さがLENGTHになるように作成した文字列を返します。
STRがnullの場合はnullを返します。STRの長さがLENGTHより大きい場合はSTRをLENGTH文字分だけ切り取って返します。LENGTHがnullまたは整数でない場合はnullを返します。PADがnullの場合はnullを返します。PADが複数文字の場合はLENGTHに合わせて繰り返した後、正確にLENGTH文字になるよう切り取って返します。
エラーコード
| エラーコード | 説明 |
|---|---|
| 90890 | LENGTHに1未満または10240を超える定数を指定した場合 |
使用例
これらの使用例で参照するWEB_APACHE_SAMPLEテーブルを準備するには、クエリ実習用データを参照してください。
-
HTTPメソッドを空白で右側にパディングして10文字に揃える
table limit=5 WEB_APACHE_SAMPLE | eval result = rpad(method, 10) | fields method, result | # result: "GET "、"POST " など -
特定の文字でパディング
table limit=5 WEB_APACHE_SAMPLE | eval result = rpad(method, 8, "-") | fields method, result | # result: "GET-----"、"POST----" など -
複数文字のパディング文字列を使用
json "{'val': 'hello'}" | eval result = rpad(val, 10, "pad") | # result: "hellopadpa" -
元の文字列が目標の長さより長い場合
json "{'val': 'hello'}" | eval result = rpad(val, 3, "x") | # result: "hel" -
NULL入力
json "{'val': null}" | eval result = rpad(val, 8, "*") | # result: null
互換性
rpad()関数は、Sonar 4.0以前のバージョンから提供されています。