Помогите с простым запросом SQL Server - PullRequest
1 голос
/ 30 мая 2010

У меня к таблицам следующее:

  1. Сотрудники: Имя nvarchar (50), Должность nvarchar (50) и Зарплата int.
  2. Работодатели: Имя nvarchar (50), Должность nvarchar (50)

Я хотел бы выбрать каждый элемент в таблице «Работодатели», где «Название должности» НЕ отображается в таблице «Сотрудники».

Я знаю, что это простой запрос, но он поставил меня в тупик. Буду благодарен за любую помощь. Спасибо.

Ответы [ 2 ]

1 голос
/ 30 мая 2010
select * from employers 
where jobtitle not in (select jobtitle 
     from employees
     where jobtitle is not null);

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

edit - спасибо всем за ненулевое исправление

0 голосов
/ 30 мая 2010

Вы можете использовать соединение:

select * 
from employers 
left join (
    select distinct jobtile
    from employees
) emp on employers.jobtitle = emp.jobtitle
where emp.jobtitle is null

Подход Itchi более читабелен, но не забудьте where jobtitle is not null в конце подзапроса:)

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