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

MySQLテーブルの全レコードを大文字から小文字へ一括変換する方法

MySQLテーブル内のすべてのレコードを大文字から小文字に変換するには、UPDATE文とLOWER()関数を組み合わせて使用します。この記事では、実際のサンプルコードを交えながら、その手順をわかりやすく解説します。

1. サンプルテーブルを作成する

まずは動作確認用のテーブルを作成しましょう。

mysql> create table DemoTable
    (
    Id varchar(100),
    StudentFirstName varchar(20),
    StudentLastName varchar(20),
    StudentCountryName varchar(10)
    );
Query OK, 0 rows affected (0.61 sec)

2. テーブルにレコードを挿入する

次に、INSERT文を使ってサンプルデータを登録します。

mysql> insert into DemoTable values('STU-101','John','Smith','US');
Query OK, 1 row affected (0.59 sec)
mysql> insert into DemoTable values('STU-102','John','Doe','UK');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values('STU-103','David','Miller','AUS');
Query OK, 1 row affected (0.19 sec)

3. 現在のデータを確認する

SELECT文でテーブルの内容を表示し、変換前の状態を確認しておきましょう。

mysql> select *from DemoTable;

実行結果は以下の通りです。

+---------+------------------+-----------------+--------------------+
| Id      | StudentFirstName | StudentLastName | StudentCountryName |
+---------+------------------+-----------------+--------------------+
| STU-101 | John             | Smith           | US                 |
| STU-102 | John             | Doe             | UK                 |
| STU-103 | David            | Miller          | AUS                |
+---------+------------------+-----------------+--------------------+
3 rows in set (0.00 sec)

4. LOWER()関数ですべてのカラムを小文字に変換する

ここがポイントです。UPDATE文の中で各カラムに対してLOWER()関数を適用することで、たった1回のクエリ実行でテーブル内の全フィールドを小文字に変換できます。

mysql> update DemoTable
set Id=lower(Id),
StudentFirstName=lower(StudentFirstName),
StudentLastName=lower(StudentLastName),
StudentCountryName=lower(StudentCountryName);
Query OK, 3 rows affected (0.22 sec)
Rows matched: 3 Changed: 3 Warnings: 0

5. 変換結果を確認する

再度SELECT文を実行して、先ほどのUPDATE文が正しく反映されているかチェックします。

mysql> select *from DemoTable;

実行結果を見ると、すべてのレコードが小文字に変換されていることがわかります。

+---------+------------------+-----------------+--------------------+
| Id      | StudentFirstName | StudentLastName | StudentCountryName |
+---------+------------------+-----------------+--------------------+
| stu-101 | john             | smith           | us                 |
| stu-102 | john             | doe             | uk                 |
| stu-103 | david            | miller          | aus                |
+---------+------------------+-----------------+--------------------+
3 rows in set (0.00 sec)

まとめ

MySQLでテーブル全体の大文字を小文字に一括変換したい場合は、UPDATE文とLOWER()関数を組み合わせるのが最もシンプルな方法です。対象カラムごとに「カラム名 = LOWER(カラム名)」を指定するだけで、1回のクエリで処理が完了します。なお、逆に小文字から大文字へ変換したい場合は、同様の手順でUPPER()関数を使用すれば対応できます。

  1. MySQLでテーブルの日付レコードを変更する方法|UPDATEとDATE_ADD()の使い方

    MySQLで保存済みの日付データに年数を加算して変更したい場合、UPDATEコマンドとDATE_ADD()関数を組み合わせることで簡単に実現できます。ここでは、実際のSQLクエリ例を使いながら、日付レコードを変更する手順を順番に解説します。1. テーブルを作成するまず、日付型(date)のカラムを持つテーブルを作成します。mysql> create table DemoTable1984 ( ShippingDate date ); Query OK, 0 rows affected (0.00 sec)2. レコードを挿入する次に、INSERTコマンドを使ってテ

  2. PythonでMySQLのテーブルから全データを取得する方法を解説

    MySQLのテーブルは、行(レコード)と列(フィールド)で構成されています。列はデータの項目(フィールド)を定義し、行は実際のデータレコードを表します。テーブルに格納されたデータは、利用するために取得する必要があります。場合によっては、テーブルからすべてのデータを一度に取得したいこともあるでしょう。テーブルからすべての行を取得するには、SELECT * ステートメントを使用します。基本構文SELECT * FROM テーブル名上記の構文における「*」は、テーブルからすべての行を取得することを意味しています。PythonでMySQLを使ってテーブルの全データを取得する手順MySQLコネクタをイン