对于我的作业,我被要求编写一个SQL语句来执行以下操作。
在registration
表格中添加一个新列(module_name char (15)
),然后更新与module_id
的每个200
对应的列。 module name
为digital diary
,201
为year planner
,202
为b’day remainder
我可以使用两个或更多语句来执行此操作,但有没有办法可以在单个sql语句中完成此操作?
答案 0 :(得分:1)
是的,可以使用DEFAULT:
CREATE TABLE registration(module_id INT);
INSERT INTO registration(module_id) VALUES (100),(200),(201),(202);
更改:
ALTER TABLE registration
ADD COLUMN module_name char(15)
DEFAULT (CASE module_id WHEN 200 THEN 'digital diary'
WHEN 201 THEN 'year planner'
WHEN 202 THEN 'b’day remainder'
END);
答案 1 :(得分:0)
您无法在一个批处理中执行此操作,您可以使用EXEC
命令来运行sql语句,这样您就可以在两个不同的批处理和一个查询中执行此操作:
EXEC('statement1')
EXEC('statement2')
答案 2 :(得分:-1)
使用存储过程,并在那里写下您需要的任何语句。