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

MySQLで一時テーブルを使用せずに列データを更新しますか?


これには、CASEステートメントを使用します。これは、一時テーブルを使用しなくても機能します。まずテーブルを作成しましょう-

mysql> create table DemoTable
   -> (
   -> UserName varchar(100),
   -> UserStatus varchar(100)
   -> );
Query OK, 0 rows affected (0.74 sec)

挿入コマンド-

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

mysql> insert into DemoTable values('Chris','Inactive');
Query OK, 1 row affected (0.19 sec)

mysql> insert into DemoTable values('Bob','Inactive');
Query OK, 1 row affected (0.32 sec)

mysql> insert into DemoTable values('Robert','Active');
Query OK, 1 row affected (0.15 sec)

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

mysql> select *from DemoTable;

出力

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

+----------+------------+
| UserName | UserStatus |
+----------+------------+
| John     | Active     |
| Chris    | Inactive   |
| Bob      | Inactive   |
| Robert   | Active     |
+----------+------------+
4 rows in set (0.00 sec)

以下は、CASE-

を使用して列データを更新するためのクエリです。
mysql> update DemoTable
   -> set UserStatus=CASE UserStatus WHEN 'Inactive' THEN 'Active' ELSE 'Inactive' END;
Query OK, 4 rows affected (0.28 sec)
Rows matched: 4 Changed: 4 Warnings: 0

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

mysql> select *from DemoTable;

出力

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

+----------+------------+
| UserName | UserStatus |
+----------+------------+
| John     | Inactive   |
| Chris    | Active     |
| Bob      | Active     |
| Robert   | Inactive   |
+----------+------------+
4 rows in set (0.00 sec)

  1. MySQLで特定の列データをエクスポートする方法は?

    MySQLで特定の列データをエクスポートするには、OUTFILE-を使用します select yourColumnName from yourTableName into outfile 'yourLocationOfFile’; まずテーブルを作成しましょう- mysql> create table DemoTable (    StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,    StudentFirstName varchar(20),    St

  2. date()関数を使用して日付を照合することでMySQLテーブルの列を更新しますか?

    以下は、dateをdate()関数と照合し、列を更新するための構文です- update yourTableName set yourColumnName=yourValue where date(yourColumnName)=curdate(); まずテーブルを作成しましょう- mysql> create table DemoTable1816      (      Name varchar(20),      JoiningDate datetime