Я хочу сделать SQL для инструкции типа «Я», и я не могу обойти ее.TSQL - для каждого подобного заявления
Если мой TABLE_A выглядит так:
[dbo].[TABLE_A](
[EmpID] [INT],
[FName] [varchar](50) NULL,
[LName] [varchar](50) NULL
)
... и мой TABLE_B выглядит следующим образом:
[dbo].[TABLE_B](
[EmployeeActivity] [varchar](50) NULL,
[EmpID] [INT]
)
Может кто-то помочь мне написать запрос, чтобы сделать что-то вроде это:
FOR EACH DISTINCT [EmployeeActivity] RETURN
[TABLE_B].[EmployeeActivity],
[TABLE_A].[FName],
[TABLE_A].[LName],
[TABLE_A].[EmpID],
CASE
WHEN ([TABLE_B].[EmployeeActivity] IS NULL) THEN ('NO')
ELSE 'YES'
END
Результаты должны выглядеть следующим образом:
FireDrill12, Bill, Jones, 342,YES
FireDrill13, Bill, Jones, 342,NO
FireDrill14, Bill, Jones, 342,YES
FireDrill12, Smith, Sue, 253,NO
FireDrill13, Smith, Sue, 253,NO
FireDrill14, Smith, Sue, 253,YES
Я не могу обдумать это.
Спасибо за любую помощь,
Аллен
Ваше заявление FOR EACH ... не является надлежащей спецификацией того, что вы хотите. Таблица примеров результатов выглядит так, как будто вам нужен простой JOIN !? –
И пример данных не имеет смысла. EmployeeActivity в первом столбце никогда не является нулевым, поэтому вы не увидите NO в последнем столбце. Чтобы развернуть предыдущий комментарий, вам понадобится инструкция SELECT с INNER JOIN. –