2015-03-30 2 views
0

Я новичок в SQL, я пытаюсь добавить столбец к моей таблице из другой таблицы с определенным условиемВставьте поле в существующей таблице с условием

У меня есть Employees2013 таблицу, которая имеет StaffNumber столбец, и я имеют таблицу Employees, которая имеет StaffNumber и Title столбцы.

Что я пытаюсь создать новый столбец под названием Title в Employees2013 и выбрать заголовок у сотрудников, где Employees2013.StaffNumber = Employees.StaffNumber.

Я попытался это, но он не работает:

insert into Employees2013(Title) 
    select e.Title 
    from LandornetSQL.dbo.Employees e, Employees2013 f 
    where e.StaffNumber = f.StaffNumber 

Я получаю эту ошибку:

Cannot insert the value NULL into column 'StaffNumber', table 'xDevProjects.NA\OnderO.Employees2013'; column does not allow nulls. INSERT fails.

кого-то есть идеи?

+0

да, не пытайтесь вставить 'NULL' на колонке, которая не позволяет им. – Lamak

ответ

1

Вставить только вставки записей, если вы хотите новый столбец, вы должны добавить столбец в таблицу.

ALTER TABLE Employees2013 ADD Title VARCHAR(100) 

Затем вы можете обновить таблицу, установив столбец Название

UPDATE Employees2013 SET Title = Employees.Title 
FROM Employees 
WHERE Employees.StaffNumber = Employees2013.StaffNumber; 
+0

SQLFiddle: http://sqlfiddle.com/#!6/06402/1 –

+0

Большое вам спасибо, я думаю, что использовал неправильный синтаксис! – ozimax06

Смежные вопросы