我是SQL的新手,我试图从具有特定条件的另一个表中添加一个列到我的表
我的Employees2013
表格中有StaffNumber
列,而且我的Employees
表格中有StaffNumber
和Title
列。
我想要的是在Title
中创建一个名为Employees2013
的新列,并从Employees中选择标题,其中Employees2013.StaffNumber = Employees.StaffNumber。
我尝试了这个,但它不起作用:
insert into Employees2013(Title)
select e.Title
from LandornetSQL.dbo.Employees e, Employees2013 f
where e.StaffNumber = f.StaffNumber
我收到此错误:
无法将值NULL插入“StaffNumber”列,表'xDevProjects.NA \ OnderO.Employees2013';列不允许空值。 INSERT失败。
任何人都有任何想法?
答案 0 :(得分:1)
仅插入插入记录,如果需要新列,则必须将该列添加到表中。
ALTER TABLE Employees2013 ADD Title VARCHAR(100)
然后您可以更新表格,设置标题栏
UPDATE Employees2013 SET Title = Employees.Title
FROM Employees
WHERE Employees.StaffNumber = Employees2013.StaffNumber;