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

MySQLの既存の列データを更新し、文字列と数値を含むvarchar列から最後の文字列を削除します


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

mysql> create table DemoTable
(
   Download varchar(100)
);
Query OK, 0 rows affected (0.53 sec)

挿入コマンド-

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

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

mysql> select *from DemoTable;

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

+----------------+
| Download       |
+----------------+
| 120 Gigabytes  |
| 190 Gigabytes  |
| 250 Gigabytes  |
| 1000 Gigabytes |
+----------------+
4 rows in set (0.00 sec)

以下は、既存の列データを更新し、最後の文字列を削除するためのクエリです-

mysql> update DemoTable set Download=LEFT(Download, INSTR(Download, ' ') - 1);
Query OK, 4 rows affected (0.16 sec)
Rows matched: 4 Changed: 4 Warnings: 0

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

mysql> select *from DemoTable;

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

+----------+
| Download |
+----------+
| 120      |
| 190      |
| 250      |
| 1000     |
+----------+
4 rows in set (0.00 sec)

  1. 文字列、数値、特殊文字などの列値でテーブルを更新するMySQL正規表現

    このためには、REGEXPと一緒にUPDATEコマンドを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable2023    -> (    -> StreetNumber varchar(100)    -> ); Query OK, 0 rows affected (0.59 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable2023 values('7'

  2. 数値を含むVARCHAR文字列のハイフンの後の数値を削除するMySQLクエリ

    これには、SUBSTRING_INDEX()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable2040    -> (    -> StudentCode varchar(20)    -> ); Query OK, 0 rows affected (0.85 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable2040 values('John-232'