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

MySQLの列から特定の値のみを置き換えます


置き換えるには、REPLACE()MySQL関数を使用します。このためにテーブルを更新する必要があるため、SET句を指定してUPDATE()関数を使用します。

以下は構文です-

update yourTableName set yourColumnName=replace(yourColumnName,yourOldValue,yourNewValue);

まずテーブルを作成しましょう-

mysql> create table DemoTable
(
   FirstName varchar(100),
   CountryName varchar(100)
);
Query OK, 0 rows affected (0.69 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('John','AUS');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values('Bob','AUS');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('Chris','US');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('David','UK');
Query OK, 1 row affected (0.43 sec)
mysql> insert into DemoTable values('Adam','US');
Query OK, 1 row affected (0.09 sec)

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

mysql> select *from DemoTable;

これにより、次の出力が生成されます-

+-----------+-------------+
| FirstName | CountryName |
+-----------+-------------+
| John      | AUS         |
| Bob       | AUS         |
| Chris     | US          |
| David     | UK          |
| Adam      | US          |
+-----------+-------------+
5 rows in set (0.00 sec)

以下は、特定の値を置き換えるクエリです-

mysql> update DemoTable set CountryName=replace(CountryName,'AUS','US');
Query OK, 2 rows affected (0.17 sec)
Rows matched: 5 Changed: 2 Warnings: 0

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

mysql> select *from DemoTable;

これにより、次の出力が生成されます-

+-----------+-------------+
| FirstName | CountryName |
+-----------+-------------+
| John      | US          |
| Bob       | US          |
| Chris     | US          |
| David     | UK          |
| Adam      | US          |
+-----------+-------------+
5 rows in set (0.00 sec)

  1. MySQLのVARCHAR列から最大値を見つける

    最大値を見つけるには、値がVARCHARタイプであるため、CAST()とともにMAX()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable2030    -> (    -> Value varchar(20)    -> ); Query OK, 0 rows affected (0.44 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable2030 values(&

  2. MySQLで選択した値が「0」の場合は別の列から選択しますか?

    これには、MySQLでIF()を使用します。構文は次のとおりです- select IF(yourColumnName1=0,yourColumnName2,yourColumnName1) as anyAliasName from yourTableName; テーブルを作成しましょう- mysql> create table demo30 −> ( −> id int not null auto_increment primary key, −> value int, −> original_value int