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

MySQLで文字列の先頭にある特定の文字を検索して置き換えるにはどうすればよいですか?


これには、INSERT()を使用できます。まずテーブルを作成しましょう-

mysql> create table DemoTable
   -> (
   -> ZipCode varchar(200)
   -> );
Query OK, 0 rows affected (0.47 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('9030');
Query OK, 1 row affected (0.15 sec)

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

mysql> insert into DemoTable values('9083');
Query OK, 1 row affected (0.20 sec)

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

selectステートメントを使用してテーブルのすべてのレコードを表示する-

mysql> select *from DemoTable;

出力

+---------+
| ZipCode |
+---------+
| 9030    |
| 3902    |
| 9083    |
| 9089    |
+---------+
4 rows in set (0.00 sec)

以下は、文字列の先頭にある文字を検索して置換するためのクエリです。ここでは、郵便番号が90から始まるレコードのみを処理しています-

mysql> update DemoTable set ZipCode=INSERT(ZipCode, 1, 2, 'Country-AUS-')
   -> where ZipCode LIKE '90%';
Query OK, 3 rows affected (0.26 sec)
Rows matched: 3  Changed: 3 Warnings: 0

テーブルレコードをもう一度確認しましょう-

mysql> select *from DemoTable;

出力

+----------------+
| ZipCode        |
+----------------+
| Country-AUS-30 |
| 3902           |
| Country-AUS-83 |
| Country-AUS-89 |
+----------------+
4 rows in set (0.00 sec)

  1. RegExpを使用してMySQLで特定の単語を検索する方法は?

    最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Title varchar(255)    -> ); Query OK, 0 rows affected (1.82 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('John is a good player'); Query OK, 1 row affected

  2. MySQLで文字列の最初に繰り返される値のみを置き換える方法

    これには、REGEXP_REPLACE()を使用できます。文字列が-だとしましょう This is my first MySQL query. This is the first tutorial. I am learning for the first time. 特定の単語の最初の出現のみを置き換える必要があります。たとえば、「最初」としましょう。出力は-である必要があります This is my second MySQL query. This is the first tutorial. I am learning for the first time. テーブルを作成しましょう-