Как объединить две таблицы и добавить столбец, который будет связывать две таблицы в SQL Server? - PullRequest
0 голосов
/ 11 июня 2018

У меня есть задача, в которой мне нужно создать две виртуальные таблицы и добавить столбец, который свяжет эти две виртуальные таблицы вместе.Я понимаю, что могу использовать операторы объединения для объединения двух виртуальных таблиц, но единственная проблема заключается в том, как добавить столбец, в котором я могу связать эти две таблицы вместе, используя первичный ключ?

Ответы [ 2 ]

0 голосов
/ 11 июня 2018

Вы должны передать столбец идентификатора компании в штатном расписании (добавить новый столбец).На основании этого вы присоединитесь к таблицам.

0 голосов
/ 11 июня 2018

Вам нужен другой стол, потому что 1 человек может работать во многих компаниях, а в 1 компании много сотрудников.Поэтому добавьте еще одну таблицу CompanyStaff, например, которая будет содержать companyID и personID, а затем выполнить объединение.

CompanyStaff TABLE

ID CompanyID StaffID

SELECT * FROM Company c INNER JOIN CompanyStaff cs 
ON c.ID = cs.CompanyID 
INNER JOIN Staff s ON s.ID = cs.StaffID

После того, как вы сможете отфильтровать или выбратьвсе, что вы хотите.

Вы также можете добавить столбец в таблицу персонала, которая содержит идентификатор компании, но это будет избыточно.В вашем примере нет информации, которая связывает сотрудников и компанию прямо сейчас, поэтому вы не можете сделать правильный запрос.

Если в этих двух таблицах есть разделенные записи, вы можете присоединить их 1-1 к RecordID, но тезаписи должны быть одинаковыми в обеих таблицах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...