1. 题目
-
题目描述
将所有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'); -
所需结果

2. 题解
UPDATE titles_test
SET to_date = NULL, from_date = '2001-01-01'
WHERE to_date = '9999-01-01'
关于NULL的用法:
- 可以拿来赋值,
a = NULL - 可使用
IS、IS NOT NULL
本文介绍了如何使用SQL语句来更新数据表中的特定记录。具体情境是在`titles_test`表中,将所有`to_date`为'9999-01-01'的项更新为NULL,并同时将`from_date`设为'2001-01-01'。这涉及到数据库的条件查询和字段赋值操作,对于数据库维护和数据清理至关重要。
361

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



