描述
将所有to_date为9999-01-01的全部更新为NULL,且 from_date更新为2001-01-01。
CREATE TABLE IF NOT EXISTS titles_test (
id int(11) not null primary key,
emp_no int(11) NOT NULL,
title varchar(50) NOT NULL,
from_date date NOT NULL,
to_date date DEFAULT NULL);
insert into titles_test values ('1', '10001', 'Senior Engineer', '1986-06-26', '9999-01-01'),
('2', '10002', 'Staff', '1996-08-03', '9999-01-01'),
('3', '10003', 'Senior Engineer', '1995-12-03', '9999-01-01'),
('4', '10004', 'Senior Engineer', '1995-12-03', '9999-01-01'),
('5', '10001', 'Senior Engineer', '1986-06-26', '9999-01-01'),
('6', '10002', 'Staff', '1996-08-03', '9999-01-01'),
('7', '10003', 'Senior Engineer', '1995-12-03', '9999-01-01');
更新后的值:
titles_test 表的值:
| id | emp_no | title | from_date | to_date |
| 1 | 10001 | Senior Engineer | 2001-01-01 | NULL |
| 2 | 10002 | Staff | 2001-01-01 | NULL |
| 3 | 10003 | Senior Engineer | 2001-01-01 | NULL |
| 4 | 10004 | Senior Engineer | 2001-01-01 | NULL |
| 5 | 10001 | Senior Engineer | 2001-01-01 | NULL |
| 6 | 10002 | Staff | 2001-01-01 | NULL |
| 7 | 10003 | Senior Engineer | 2001-01-01 | NULL |
后台会执行下面SQL语句得到输出,判断正确:
select count(*) from titles_test where from_date='2001-01-01' and to_date is NULL;
/*题目:
将所有to_date为9999-01-01的全部更新为NULL,且 from_date更新为2001-01-01。
*/
update titles_test
set to_date = null , from_date = '2001-01-01'
where to_date = '9999-01-01'
该博客讨论了如何使用SQL语句来更新数据库中特定字段的值。具体例子是将`titles_test`表中所有`to_date`为'9999-01-01'的记录更新为NULL,并将`from_date`统一设置为'2001-01-01'。执行更新操作后,验证了更新结果,确保所有符合条件的记录都已正确修改。

376

被折叠的 条评论
为什么被折叠?



