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

MySQLはフィールドの文字列を検索/置換しますか?


フィールド内の文字列を検索/置換するための構文は次のとおりです-

update yourTableName
set yourColumnName =REPLACE(yourColumnName,yourOldValue,yourNewValue);
を更新します

上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです-

mysql> create table FindReplaceDemo
   -> (
   -> FileId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> FileDirectory text
   -> );
Query OK, 0 rows affected (0.92 sec)

これで、insertコマンドを使用してテーブルにいくつかのレコードを挿入できます。クエリは次のとおりです-

mysql> insert into FindReplaceDemo(FileDirectory) values('C://User//MySQL');
Query OK, 1 row affected (0.19 sec)
mysql> insert into FindReplaceDemo(FileDirectory) values('D://WebsiteImage//image1.jpg');
Query OK, 1 row affected (0.12 sec)
mysql> insert into FindReplaceDemo(FileDirectory) values('E://Java//AdvancedJava');
Query OK, 1 row affected (0.20 sec)

selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-

mysql> select *from FindReplaceDemo;

これが出力です-

+--------+------------------------------+
| FileId | FileDirectory                |
+--------+------------------------------+
| 1      | C://User//MySQL              |
| 2      | D://WebsiteImage//image1.jpg |
| 3      | E://Java//AdvancedJava       |
+--------+------------------------------+
3 rows in set (0.00 sec)

フィールド内の文字列を検索/置換するためのクエリは次のとおりです-

mysql> update FindReplaceDemo
   -> set FileDirectory =REPLACE(FileDirectory,'E://Java//AdvancedJava','E://Java//SpringAndHibernateFramework');
Query OK, 1 row affected (0.12 sec)
Rows matched: 3 Changed: 1 Warnings: 0

それでは、テーブルレコードをもう一度確認しましょう。クエリは次のとおりです-

mysql> select *from FindReplaceDemo;

出力は次のようになり、値が置き換えられます-

+--------+---------------------------------------+
| FileId | FileDirectory                         |
+--------+---------------------------------------+
| 1      | C://User//MySQL                       |
| 2      | D://WebsiteImage//image1.jpg          |
| 3      | E://Java//SpringAndHibernateFramework |
+--------+---------------------------------------+
3 rows in set (0.00 sec)

  1. MySQLでN番目の最大値を見つけるためのクエリ

    最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Value int    -> ); Query OK, 0 rows affected (0.59 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values(40); Query OK, 1 row affected (0.26 sec) mysql> insert into Demo

  2. C++で文字列を検索して置換

    文字列Sがあるとすると、文字のグループを新しい文字に置き換えるいくつかの置換操作を実行します。各置換操作には、開始インデックスi、ソースワードx、およびターゲットワードyの3つのパラメータがあります。ここでの規則は、xが元の文字列Sの位置iで始まる場合、xの出現をyに置き換えるというものです。それ以外の場合は何もしません。 したがって、例として、S =abcdがあり、置換操作i =2、x =cd、y =ffffがある場合、 cdは元の文字列の位置2から始まるため、考えてみます。 S、これを「ffff」に置き換える必要があります。 置換操作i=0、x =ab、y =eeeと、別の置換操作i