Запрос SQL для выбора только тех значений, у которых нет индикатора по умолчанию - PullRequest
0 голосов
/ 04 августа 2011

У меня есть таблица со следующими полями: Идентификатор первичного ключа Employee_ID Default_Indicator (значение 'N' или 'Y') Принадлежность (студент, персонал, факультет)

Сотрудник может быть только студентом,Сотрудник или преподаватель.Какой бы из них ни был, индикатор по умолчанию = 'Y'

Проблема в том, что значение по умолчанию для индикатора по умолчанию = 'N'.Иногда пользователи не отображаются в приложении, поскольку у них нет установленного default_Indicator.

Как запросить, чтобы найти тех, которые имеют значение 'N' для Default_indicator, но не имеют другой строки, имеющейDefault_indicator = 'Y'

Спасибо за любую помощь.

Ответы [ 2 ]

0 голосов
/ 04 августа 2011

Другое решение:

ELECT Employee_ID
FROM [table_name] t
WHERE t.Default_Indicator = 'N' AND t.Employee_ID 
     NOT IN  ( SELECT t1.Employee_ID
          FROM [table_name] t1
              AND t1.Default_Indicator = 'Y' )
0 голосов
/ 04 августа 2011
SELECT Employee_ID
FROM [table_name] t
WHERE Default_Indicator = 'N'
    AND NOT EXISTS ( SELECT *
          FROM [table_name] t1
          WHERE t.Employee_ID = t1.Employee_ID
              AND Default_Indicator = 'Y' )

Я не уверен, что я полностью понимаю, что вы имеете в виду, но я думаю, что это должно сработать.Попробуйте:)

...