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

文字列フィールドに連結して文字列フィールドを更新するMySQLクエリ?


文字列フィールドを連結するには、CONCAT()関数を使用します。まずテーブルを作成しましょう-

mysql> create table DemoTable
   -> (
   -> SequenceId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> StudentId varchar(100)
   -> );
Query OK, 0 rows affected (0.59 sec)

挿入コマンド-

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

mysql> insert into DemoTable(StudentId) values('STU1');
Query OK, 1 row affected (0.18 sec)

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

mysql> select *from DemoTable;

出力

+------------+-----------+
| SequenceId | StudentId |
+------------+-----------+
| 1          | STU       |
| 2          | STU1      |
+------------+-----------+
2 rows in set (0.00 sec)

これは、文字列フィールドに連結して文字列フィールドを更新するためのクエリです-

mysql> update DemoTable
   -> set StudentId=concat(StudentId,'-','101');
Query OK, 2 rows affected (0.14 sec)
Rows matched: 2 Changed: 2 Warnings: 0

テーブルからもう一度すべてのレコードを確認しましょう-

mysql> select *from DemoTable;

出力

+------------+-----------+
| SequenceId | StudentId |
+------------+-----------+
| 1          | STU-101   |
| 2          | STU1-101  |
+------------+-----------+
2 rows in set (0.00 sec)

  1. NULLの代わりに単一のフィールドのみを更新するMySQLクエリ

    これには、COALESCE()を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1805      (      Name1 varchar(20),      Name2 varchar(20)      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTabl

  2. MySQL:Group Byでフィールドを更新しますか?

    GROUP BYでフィールドを更新するには、UPDATEコマンドでORDERBYLIMITを使用します- mysql> create table DemoTable2018    -> (    -> EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> EmployeeName varchar(20),    -> EmployeeSalary int    -> ); Query OK, 0 r