MySQLで文字列の大文字・小文字を変換する関数とは?LCASE・LOWER・UCASE・UPPERの使い方
MySQLでは、文字列の大文字と小文字を変換するための関数が4種類用意されています。
- 小文字に変換する場合:
LCASE()またはLOWER() - 大文字に変換する場合:
UCASE()またはUPPER()
LCASE() と LOWER()、UCASE() と UPPER() はそれぞれ同義語(エイリアス)の関係にあり、動作にまったく違いはありません。どちらを使っても同じ結果が得られます。
文字列を小文字に変換する例
引数に渡した文字列を、すべて小文字に変換して返します。
mysql> Select LCASE('NEW DELHI');
+--------------------+
| LCASE('NEW DELHI') |
+--------------------+
| new delhi |
+--------------------+
1 row in set (0.00 sec)
LOWER('NEW DELHI') を実行した場合も、結果はまったく同じになります。
文字列を大文字に変換する例
逆に、文字列をすべて大文字に変換したい場合は UCASE() または UPPER() を使用します。
mysql> Select UCASE('new delhi');
+--------------------+
| UCASE('new delhi') |
+--------------------+
| NEW DELHI |
+--------------------+
1 row in set (0.00 sec)
UPPER('new delhi') を実行した場合も同様に、すべて大文字に変換された文字列が返されます。
テーブルの列に対して使用する例
これらの関数は、テーブルの列の値に対しても利用できます。例えば、Student テーブルの Name 列の値を大文字に変換して表示するには、次のようなクエリを実行します。
mysql> Select Name, UCASE(Name) from student; +---------+-------------+ | Name | UCASE(Name) | +---------+-------------+ | Gaurav | GAURAV | | Aarav | AARAV | | Harshit | HARSHIT | | Gaurav | GAURAV | | Yashraj | YASHRAJ | +---------+-------------+ 5 rows in set (0.00 sec)
小文字に変換して表示したい場合は、LCASE() を指定します。
mysql> Select Name, LCASE(Name) from student; +---------+-------------+ | Name | LCASE(Name) | +---------+-------------+ | Gaurav | gaurav | | Aarav | aarav | | Harshit | harshit | | Gaurav | gaurav | | Yashraj | yashraj | +---------+-------------+ 5 rows in set (0.00 sec)
LOWER(Name) や UPPER(Name) を指定した場合も、それぞれ同じ変換結果が得られます。
覚えておきたいポイント
- これらの関数は表示結果のみを変換するもので、テーブルに格納されている元のデータが書き換えられることはありません。
- マルチバイト文字セットにも対応しているため、日本語を含む文字列でも正しく処理されます(大文字・小文字の区別がある文字が変換対象となります)。
- SELECT句だけでなく、WHERE句での比較などさまざまな場面で活用できます。
-
MySQLのSOUNDS LIKE演算子とは?使い方と具体例をわかりやすく解説
MySQLのSOUNDS LIKE演算子は、その名の通り、テーブル内から「発音が似ている」値を検索するための演算子です。構文は Expression1 SOUNDS LIKE Expression2 という形式で、2つの式が英語の発音(サウンド)に基づいて比較されます。SOUNDS LIKE演算子の仕組みSOUNDS LIKE演算子は、内部的にSOUNDEX()関数を利用しています。SOUNDEXは文字列を音声コードに変換するアルゴリズムで、これによりスペルが異なっていても発音が近い文字列同士を一致させることができます。たとえば、ユーザーが入力した名前のつづりに誤字や揺れがある場合でも、発音が
-
MySQLで既存カラム名を変更する方法|ALTER TABLE CHANGE構文を実例付きで解説
MySQLでは、ALTER TABLE文とCHANGE句を組み合わせることで、テーブル内の既存カラム(列)の名前を簡単に変更できます。この記事では、基本構文から実際の実行例まで、手順をわかりやすく解説します。 基本構文 ALTER TABLE table_name CHANGE old_column_name new_column_name datatype; 各要素の意味は以下の通りです。 table_name:変更したいカラムが含まれるテーブルの名前 old_column_name:現在設定されているカラム名(変更対象) new_column_name:新しく付けたいカラム名 datat