元の文字列がLPAD()・RPAD()関数で指定した長さより長い場合はどうなる?
MySQLにおいて、LPAD()やRPAD()関数に渡した元の文字列が、第2引数で指定した長さ(length)よりも長い場合、関数は一切パディングを行わず、元の文字列を指定された長さまで切り詰めて(トリミングして)返します。
動作のポイント
- 埋め込み文字(パッド文字)は追加されない
- 元の文字列が左から指定長分だけ切り詰められる
- エラーにはならず、正常に結果が返される
実行例
mysql> Select LPAD('ABCD',3,'*');
+--------------------+
| LPAD('ABCD',3,'*') |
+--------------------+
| ABC |
+--------------------+
1 row in set (0.00 sec)
mysql> Select RPAD('ABCD',3,'*');
+--------------------+
| RPAD('ABCD',3,'*') |
+--------------------+
| ABC |
+--------------------+
1 row in set (0.00 sec)結果の解説
上記の例からわかるように、どちらの関数も「*」によるパディングは行われず、元の文字列「ABCD」が引数で指定された長さである3文字に切り詰められて「ABC」と返されています。
つまり、LPAD()・RPAD()関数におけるlength引数は、返される文字列の最終的な長さを意味しており、元の文字列がその長さを超えている場合は超過分が単純に切り捨てられるという仕様になっています。
-
JavaScriptのカスタム関数と組み込み関数の違いをわかりやすく解説
JavaScriptにおけるカスタム関数とは、開発者自身が目的に合わせて定義・作成する「ユーザー定義関数」のことです。JavaScriptでは、処理内容に応じて独自の関数を自由に記述できます。一方、組み込み関数は、あらかじめJavaScriptライブラリ側で用意されている関数であり、自分で実装しなくてもすぐに呼び出して利用できるのが特徴です。 カスタム関数の基本構文 カスタム関数は、functionキーワードを使って次のように定義します。 <script> <!-- function functionname
-
MySQL JDBCドライバーの接続文字列とは?書き方と使い方を解説
MySQL JDBCドライバーの接続文字列とはJavaからMySQLデータベースへ接続する際に必要となるのが「JDBC接続文字列」です。まず、MySQLのJDBCドライバーを読み込むためのコードは以下のようになります。Class.forName(com.mysql.jdbc.Driver);ここで指定している Driver はインターフェースであり、このクラスをロードすることでMySQL用のJDBCドライバーが利用可能になります。なお、新しいMySQL Connector/J(バージョン8.0以降)では、ドライバークラス名が com.mysql.cj.jdbc.Driver に変更されている点