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

MySQL replace()を使用して複数のレコードの文字列を置き換えるにはどうすればよいですか?


replace()関数を使用して、文字列を別の文字列に置き換えることができます。 replace()を理解するには、いくつかのレコードを含むテーブルを作成する必要があります。以下は、テーブルを作成するためのクエリです。

mysql> create table replaceDemo
   -> (
   -> Name varchar(200)
   -> );
Query OK, 0 rows affected (0.55 sec)

INSERTコマンドを使用していくつかのレコードを挿入します。レコードを挿入するためのクエリは次のとおりです-

mysql> insert into replaceDemo values('John');
Query OK, 1 row affected (0.17 sec)

mysql> insert into replaceDemo values('Demo');
Query OK, 1 row affected (0.16 sec)

mysql> insert into replaceDemo values('Smith');
Query OK, 1 row affected (0.13 sec)

mysql> insert into replaceDemo values('Demo');
Query OK, 1 row affected (0.14 sec)

mysql> insert into replaceDemo values('Carol');
Query OK, 1 row affected (0.14 sec)

テーブル「replaceDemo」にあるレコードを確認してみましょう。クエリは次のとおりです。

mysql> select *from replaceDemo;

以下は例です。

+-------+
| Name  |
+-------+
| John  |
| Demo  |
| Smith |
| Demo  |
| Carol |
+-------+
5 rows in set (0.00 sec)

上記では、テーブルにデモ値が2回あり、「デモ」を「アミット」という名前に置き換えたいと思います。そのために、MySQLのreplace()関数を使用できます。クエリは次のとおりです-

mysql> UPDATE replaceDemo
   -> SET Name = REPLACE (Name, 'Demo', 'Amit')
   -> WHERE Name LIKE 'Demo';
Query OK, 2 rows affected (0.18 sec)
Rows matched: 2  Changed: 2  Warnings: 0

「Demo」という名前が「Amit」という名前に置き換えられているかどうかを確認するためのクエリは次のとおりです。

mysql> select *from replaceDemo;

これが出力です。

+-------+
| Name  |
+-------+
| John  |
| Ramit |
| Smith |
| Amit |
| Carol |
+-------+
5 rows in set (0.00 sec)

上記の出力でわかるように、「Demo」という名前を「Amit」に変更しました。


  1. MySQLは1つのクエリで複数のレコードを更新しますか?

    まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> Marks1 int,    -> Marks2 int,    -> Marks3 int    -> ); Query OK, 0 rows affected (0.60 sec) 挿入コマンド-を使用して、テー

  2. 複数のレコードをすばやく挿入するMySQLクエリ

    複数のレコードをすばやく挿入するには、単一のINSERTを使用して、次の構文に従います- insert into yourTableName values(yourValue1,yourValue2,...N),(yourValue1,yourValue2,...N).....N; 上記の構文を理解するために、テーブルを作成しましょう- mysql> create table DemoTable2007 (    Amount1 int,    Amount2 int,    Amount3 int ); Query OK,