根据另一个列中的日期值执行 MySQL UPDATE


我们先创建一个表 -

mysql> create table DemoTable(
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   Name varchar(100),
   AdmissionDate date
);
Query OK, 0 rows affected (0.42 sec)

使用 insert 命令在表中插入一些记录 -

mysql> insert into DemoTable(Name,AdmissionDate) values('Chris','2019-11-21');
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable(Name,AdmissionDate) values('Mike','2019-03-11');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable(Name,AdmissionDate) values('Sam','2018-04-01');
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable(Name,AdmissionDate) values('Carol','2019-05-01');
Query OK, 1 row affected (0.40 sec)

使用 select 语句显示表中的所有记录 -

mysql> select *from DemoTable;

这将生成以下输出 -

+----+-------+---------------+
| Id | Name  | AdmissionDate |
+----+-------+---------------+
|  1 | Chris | 2019-11-21    |
|  2 | Mike  | 2019-03-11    |
|  3 | Sam   | 2018-04-01    |
|  4 | Carol | 2019-05-01    |
+----+-------+---------------+
4 rows in set (0.00 sec)

现在,让我们根据特定的 DATE 值(此处为 2019 年 04 月 01 日)更新表 -

mysql> update DemoTable set Name='Robert',AdmissionDate='2019-04-01' where Id=3;
Query OK, 1 row affected (0.14 sec)
Rows matched: 1 Changed: 1 Warnings: 0

让我们再次检查表记录 -

mysql> select *from DemoTable;

这将生成以下输出 -

+----+--------+---------------+
| Id | Name   | AdmissionDate |
+----+--------+---------------+
|  1 | Chris  | 2019-11-21    |
|  2 | Mike   | 2019-03-11    |
|  3 | Robert | 2019-04-01    |
|  4 | Carol  | 2019-05-01    |
+----+--------+---------------+
4 rows in set (0.00 sec)

更新于:2019 年 9 月 24 日

154 次浏览

开始您的职业生涯

完成课程获得认证

开始
广告
© . All rights reserved.