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

MySQLのTRIM()関数で第1引数(BOTH・LEADING・TRAILING)を省略した場合、どのような結果が返されるのか?

MySQLのTRIM()関数では、第1引数(BOTHLEADINGTRAILINGのいずれか)を明示的に指定しなかった場合、デフォルト値としてBOTHが自動的に適用されます。つまり、文字列の先頭と末尾の両方から指定した文字が削除されることになります。

以下の例でその動作を確認してみましょう。

使用例

mysql> SELECT TRIM('A' FROM 'ABCDAEFGAA');
+-----------------------------+
| TRIM('A' FROM 'ABCDAEFGAA') |
+-----------------------------+
| BCDAEFG                     |
+-----------------------------+
1 row in set (0.00 sec)

結果の解説

上記の実行結果を見ると、入力文字列 'ABCDAEFGAA'先頭にある「A」末尾にある「AA」の両方が削除され、'BCDAEFG' という結果が返されていることがわかります。

これは、第1引数を指定しなかったため、MySQLが自動的に BOTH を適用し、文字列の両端から「A」を削除したためです。

補足:各引数の違い

  • BOTH:文字列の先頭と末尾の両方から指定文字を削除する(デフォルト)
  • LEADING:文字列の先頭のみから指定文字を削除する
  • TRAILING:文字列の末尾のみから指定文字を削除する

このように、TRIM()関数を使う際に第1引数を省略しても BOTH と同じ動作になることを覚えておくと、SQL文をより簡潔に書くことができます。

  1. MySQLのINTERVAL()関数とは?構文と戻り値の仕組みを実例付きで解説

    MySQLのINTERVAL()関数は、第1引数とそれ以降の複数の引数を比較し、「第1引数より大きい値」が最初に現れる位置(インデックス)を返す関数です。複数の閾値と一度に大小比較を行いたい場合などに活用できます。 INTERVAL()関数の構文 INTERVAL(N, N1, N2, N3, …) この関数は、第1引数であるNを、残りの引数であるN1、N2、N3…と順番に比較していきます。すべての引数は整数として扱われ、比較結果に応じて以下のような値を返します。 N < N1 の場合 → 0 を返す N < N2 の場合 → 1 を返す N < N3 の場合 → 2

  2. MySQLのTRIM()関数とは?文字列から接頭辞・接尾辞を削除する方法を解説

    MySQLのTRIM()関数は、文字列から特定の接頭辞(プレフィックス)や接尾辞(サフィックス)、あるいはその両方を取り除くために使用される関数です。不要な記号や余分な文字を文字列の先頭・末尾から除去したい場合に非常に便利です。TRIM()関数の動作は、以下の構文を見るとよく理解できます。構文TRIM([{BOTH | LEADING | TRAILING} [str_to_remove] FROM] string)各引数の意味は次のとおりです。BOTH:文字列の左側(先頭)と右側(末尾)の両方から指定した文字列を削除します。LEADING:先頭(左側)に付いている文字列のみを削除します。TR