MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLのLPAD・RPAD関数を使って文字列を別の文字列で埋める方法

MySQLには、ある文字列を別の文字列で埋め込む(パディングする)ための関数として、LPAD()RPAD()の2つが用意されています。これらの関数を使うことで、指定した長さになるまで文字列の左側または右側に任意の文字列を繰り返し挿入できます。

LPAD()関数で左側に文字列を埋める

LPAD()関数は、その名前が示すとおり、元の文字列の左側を別の文字列で埋め込みます。MySQLでの基本的な構文は以下のとおりです。

構文

LPAD(original_string, @length, pad_string)
  • original_string:別の文字列を埋め込む対象となる元の文字列
  • @length:埋め込み後に返される文字列の合計長
  • pad_string:元の文字列に埋め込む文字列

使用例

mysql> SELECT LPAD('tutorialspoint',18,'www.');
+----------------------------------+
| LPAD('tutorialspoint',18,'www.') |
+----------------------------------+
| www.tutorialspoint |
+----------------------------------+
1 row in set (0.00 sec)

この例では、「tutorialspoint」という14文字の文字列が18文字になるまで、左側に「www.」が繰り返し挿入され、結果として「www.tutorialspoint」が返されます。

RPAD()関数で右側に文字列を埋める

RPAD()関数は、その名前が示すとおり、元の文字列の右側を別の文字列で埋め込みます。構文はLPAD()と同じ形式です。

構文

RPAD(original_string, @length, pad_string)
  • original_string:別の文字列を埋め込む対象となる元の文字列
  • @length:埋め込み後に返される文字列の合計長
  • pad_string:元の文字列に埋め込む文字列

使用例

mysql> SELECT RPAD('www.tutorialspoint',22,'.com');
+--------------------------------------+
| RPAD('www.tutorialspoint',22,'.com') |
+--------------------------------------+
| www.tutorialspoint.com |
+--------------------------------------+
1 row in set (0.06 sec)

この例では、「www.tutorialspoint」という18文字の文字列が22文字になるまで、右側に「.com」が挿入され、結果として「www.tutorialspoint.com」が返されます。

利用時の注意点

@lengthに元の文字列の長さより小さい値を指定した場合は、LPAD()・RPAD()ともに文字列が切り詰められて返されます。また、pad_stringに空文字列を指定するとNULLが返される点にも注意しましょう。これらの関数は、IDやコードの桁数を揃えたい場合など、データの整形に非常に便利です。

  1. MySQLのSUBSTRING_INDEX()関数で文字列を分割する方法を徹底解説

    MySQLで文字列を特定の区切り文字で分割したい場合、SUBSTRING_INDEX() 関数が非常に便利です。この記事では、サンプルテーブルの作成から、氏名を「名」と「姓」に分割するクエリの実行まで、具体的な手順をわかりやすく解説します。 SUBSTRING_INDEX()関数とは SUBSTRING_INDEX(str, delim, count) は、区切り文字 delim の count 回目の出現位置を基準に部分文字列を返す関数です。count が正の値の場合は左側から、負の値の場合は右側から数えます。この特性を組み合わせることで、柔軟に文字列を分割できます。 サンプルテーブルの作成

  2. Pythonで文字列内の数字を英単語(文字列)に置き換える方法

    Pythonでは、文字列の中に含まれる数字を、対応する英単語(例:「3」→「three」)に置き換えることができます。この記事では、辞書(dict)とforループを組み合わせた基本的な実装方法を、サンプルコードとともにわかりやすく解説します。 1. 変換用の辞書を用意する まず、各数字をキー、その英単語表現を値とする辞書オブジェクトを作成します。 dct = {0: zero, 1: one, 2: two, 3: three, 4: four, 5: five, 6: six, 7: seven, 8: eight, 9: nine} 2. 結果を格納する空の文字列を初期化