MySQLで文字列の末尾12桁を取得する方法|RIGHT()関数の使い方を解説
MySQLで文字列から末尾12桁(最後の12桁)を取得したい場合は、RIGHT()関数を使用します。RIGHT()関数は、文字列の右端から指定した文字数を抽出できる関数で、「RIGHT(対象文字列, 抽出する文字数)」という形式で記述します。
それでは、実際にテーブルを作成し、動作を確認していきましょう。
テーブルの作成
まず、CREATE TABLE文でサンプル用のテーブルを作成します。
mysql> create table DemoTable
(
Number varchar(200)
);
Query OK, 0 rows affected (0.59 sec)レコードの挿入
続いて、INSERTコマンドでテーブルにデータを登録します。
mysql> insert into DemoTable values('7437647847847474374747464647484949959958484');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values('9990000399494959697080800007007070808080808');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values('1211111212344554444443333345555554433333333333333');
Query OK, 1 row affected (0.14 sec)登録済みレコードの確認
SELECT文ですべてのレコードを表示します。
mysql> select * from DemoTable;
実行すると、以下のように登録されたデータが出力されます。
+---------------------------------------------------+ | Number | +---------------------------------------------------+ | 7437647847847474374747464647484949959958484 | | 9990000399494959697080800007007070808080808 | | 1211111212344554444443333345555554433333333333333 | +---------------------------------------------------+ 3 rows in set (0.00 sec)
末尾12桁を取得するクエリ
MySQLで文字列から末尾12桁を取得するには、次のようなクエリを実行します。AS句で別名を指定することで、結果の見出しも読みやすくなります。
mysql> select right(Number,12) as `Last 12 Digit From String` from DemoTable;
実行結果は以下のとおりです。各レコードの右端12桁が正しく抽出されていることが確認できます。
+---------------------------+ | Last 12 Digit From String | +---------------------------+ | 949959958484 | | 070808080808 | | 333333333333 | +---------------------------+ 3 rows in set (0.00 sec)
補足:RIGHT()関数を使う際のポイント
- 指定した文字数が元の文字列の長さよりも大きい場合は、エラーにはならず文字列全体がそのまま返されます。
- 文字列の先頭から任意の桁数を取り出したい場合は、LEFT()関数を使用します。
- SUBSTRING()関数に負の値を渡す方法(例:SUBSTRING(Number, -12))でも末尾からの抽出が可能ですが、末尾N桁の取得であればRIGHT()が最もシンプルで直感的です。
-
MySQLで文字列から部分文字列を抽出する方法|SUBSTRING関数の使い方を徹底解説
MySQLのSUBSTRING()関数とはMySQLでは、SUBSTRING()関数を使うことで、文字列から任意の部分文字列(サブストリング)を抽出できます。この関数は、指定した開始位置から、指定した長さの部分文字列を返すのが基本的な動作です。SUBSTRING()関数には、以下の4つの構文形式があります。SUBSTRING(str, pos)SUBSTRING(str FROM pos)SUBSTRING(str, pos, len)SUBSTRING(str FROM pos FOR len)各形式の違いと動作のポイント引数lenを指定しない形式では、文字列strのpos番目の位置から始ま
-
MySQLでテーブルの最後の10件のレコードを取得する方法
MySQLでテーブルの末尾にある10行(最新の10件)を取得したい場合は、SELECT文とLIMIT句を組み合わせたサブクエリを利用します。この記事では、実際にテーブルを作成し、データを挿入しながら、最後の10件を取得するクエリの手順を具体的に解説します。 1. サンプルテーブルの作成 まず、動作確認用のテーブルを作成します。 mysql> create table Last10RecordsDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected