ここでは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)