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

MySQLでセパレータとセパレータの後の数字を削除して、現在の値のサブストリングで値を更新するにはどうすればよいですか?


ここで、「 StringSeparatorNumber」という形式の文字列があるとします。 」はJohn/56989のような形式です。ここで、区切り文字/の後の数字を削除する場合は、SUBSTRING_INDEX()を使用します。まずテーブルを作成しましょう-

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

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('John/56989');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('Carol');
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable values('David/74674');
Query OK, 1 row affected (0.09 sec)
mysql> insert into DemoTable values('Bob/45565');
Query OK, 1 row affected (0.09 sec)
>

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

mysql> select *from DemoTable;

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

+-------------+
| StudentName |
+-------------+
| John/56989  |
| Carol       |
| David/74674 |
| Bob/45565   |
+-------------+
4 rows in set (0.00 sec)

以下は、現在の値のサブストリングで値を更新するためのクエリです-

mysql> update DemoTable set StudentName=substring_index(StudentName,'/',1);
Query OK, 3 rows affected (0.13 sec)
Rows matched :4 Changed :3 Warnings :0

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

mysql> select *from DemoTable;

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

+-------------+
| StudentName |
+-------------+
| John        |
| Carol       |
| David       |
| Bob         |
+-------------+
4 rows in set (0.00 sec)

  1. MySQLでフィールドがnullの場合、特定の値でフィールドを更新するにはどうすればよいですか?

    フィールドがnullの場合にフィールドを更新するには、UPDATEコマンドとともにISNULLプロパティを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable (    StudentScore int ); Query OK, 0 rows affected (0.47 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values(89); Query OK, 1 row affected (0.16 sec) mysql

  2. MySQLで現在の日付よりも短い日付を選択するにはどうすればよいですか?

    まずテーブルを作成しましょう- mysql> create table DemoTable1877 ( DueDate datetime ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1877 values('2019-12-10'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1877 values