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

LPAD・RPAD関数で文字列を埋め込みながらMySQLテーブルを更新する方法

MySQLでは、LPAD()関数やRPAD()関数とUPDATE文を組み合わせることで、列の値に文字列を埋め込み(パディングし)、その結果でテーブルを直接更新することができます。

ここでは、サンプルテーブル「examination_btech」を使って、具体的な手順を解説します。

RPAD()関数で末尾に文字列を追加して更新する例

例えば、「course」列の値の末尾に「(CSE)」という文字列を追加し、その結果でテーブル自体も更新したい場合は、次のようなクエリを実行します。

mysql> Update examination_btech set course = RPAD(Course, 11,'(CSE)');
Query OK, 10 rows affected (0.16 sec)

mysql> Select * from examination_btech;
+-----------+----------+-------------+
| RollNo    | Name     | Course      |
+-----------+----------+-------------+
| 201712001 | Rahul    | B.tech(CSE) |
| 201712002 | Raman    | B.tech(CSE) |
| 201712003 | Sahil    | B.tech(CSE) |
| 201712004 | Shalini  | B.tech(CSE) |
| 201712005 | Pankaj   | B.tech(CSE) |
| 201712006 | Mohan    | B.tech(CSE) |
| 201712007 | Yash     | B.tech(CSE) |
| 201712008 | digvijay | B.tech(CSE) |
| 201712009 | Gurdas   | B.tech(CSE) |
| 201712010 | Preeti   | B.tech(CSE) |
+-----------+----------+-------------+
10 rows in set (0.00 sec)

上記の実行結果を見ると、「course」列の各値の末尾に「(CSE)」が追加され、テーブルが正しく更新されていることがわかります。

LPAD()関数で先頭に文字列を追加して更新する

同様に、LPAD()関数を使用すれば、列の値の先頭に文字列を埋め込み、そのままテーブルを更新することも可能です。用途に応じて、文字列を前に付ける場合はLPAD()、後ろに付ける場合はRPAD()を使い分けるとよいでしょう。

  1. MySQLでCASE WHENを使って列内の2つの値を交換・更新する方法

    MySQLである列内の2つの値を入れ替え(スワップ)したい場合、CASE WHEN文を使えば一度のUPDATE文で簡単に実現できます。ここでは、サンプルテーブルを作成しながら、実際に値を交換する手順を解説します。 1. サンプルテーブルの作成 まず、テーブルを作成します。 mysql> create table DemoTable1382 -> ( -> StudentName varchar(20) -> ); Query OK, 0 rows affected (0.57 sec) 2. レコードの挿入 INSERTコマンドでいくつかのレ

  2. MySQLで月ごとにテーブルの値を合計する方法を解説

    MySQLでテーブル内の値を月ごとに合計したい場合は、EXTRACT()関数を使用します。この関数を使うことで、日付から特定の月の情報を抽出できます。例えば、年に関係なく1月のすべての価格を合計したい場合などに便利です。サンプルテーブルの作成まず、デモ用のテーブルを作成しましょう。mysql> create table DemoTable1415 -> ( -> ProductPurchaseDate date, -> ProductPrice int -> ); Query OK, 0 rows affected (0.53 se