【MySQL】0埋め(0パディング)と0埋め削除する方法


ここではMySQLで、0埋め(0パディング)する方法と0埋めされた0を削除する方法を紹介しています。
・LPAD:左から0埋め
・RPAD:右から0埋め
・TRIM:左端・右端から0を削除

LPAD関数:左から0埋め

列の値を左から0埋めする場合はLPAD関数を使います。

LPAD関数は、文字列1を指定した長さになるまで、文字列2で埋めます。

LPAD(文字列1,長さ,文字列2)

次のSQLでは、’X’という文字列を左から3文字になるまで0埋めします。結果として’00X’が返ってきます。

SELECT LPAD('X',3,'0');

RPAD関数:右から0埋め

列の値を右から0埋めする場合はRPAD関数を使います。

RPAD関数は、文字列1を指定した長さになるまで、文字列2で埋めます。

RPAD(文字列1,長さ,文字列2)

次のSQLでは、’X’という文字列を右から3文字になるまで0埋めします。結果として’X00’が返ってきます。

SELECT RPAD('X',3,'0');

TRIM:左端の0埋めを削除

左端の0埋めを削除するには、TRIM関数でLEADINGキーワードを指定して削除します。

TRIM関数でLEADINGキーワードを指定する場合の基本的な使い方は次の通りです。削除対象の文字列の左端から、削除したい文字列を削除した結果を返します。

TRIM(LEADING 削除したい文字列 FROM 削除対象の文字列);

次のSQLでは、’00100’という文字列の左端から0埋めを削除して’100’という文字列を返しています。

mysql> SELECT '00100',TRIM(LEADING '0' FROM '00100');
+-------+--------------------------------+
| 00100 | TRIM(LEADING '0' FROM '00100') |
+-------+--------------------------------+
| 00100 | 100                            |
+-------+--------------------------------+
1 row in set (0.00 sec)

TRIM:右端の0埋めを削除

右端の0埋めを削除するには、TRIM関数でTRAILINGキーワードを指定して削除します。

TRIM関数でTRAILINGキーワードを指定する場合の基本的な使い方は次の通りです。削除対象の文字列の右端から、削除したい文字列を削除した結果を返します。

TRIM(TRAILING 削除したい文字列 FROM 削除対象の文字列);

次のSQLでは、’00100’という文字列の右端から0埋めを削除して’001’という文字列を返しています。

mysql> SELECT '00100',TRIM(TRAILING '0' FROM '00100');
+-------+---------------------------------+
| 00100 | TRIM(TRAILING '0' FROM '00100') |
+-------+---------------------------------+
| 00100 | 001                             |
+-------+---------------------------------+
1 row in set (0.00 sec)