SQL Добавить столбец, используя Left Join в представлении

Вопрос: У меня есть таблица, где я хочу добавить столбец IS_TRUE на основе другой таблицы с предложением where. Т.е.: У меня есть таблица под названием Employee и у меня есть другая таблица с именем Manager, теперь я хочу вставить/добавить столбец IS_True в таблице Employee на основе: A.ID = B.ID where ((A.Name Is Not Null) and

Вопрос:

У меня есть таблица, где я хочу добавить столбец IS_TRUE на основе другой таблицы с предложением where.

Т.е.: У меня есть таблица под названием Employee и у меня есть другая таблица с именем Manager, теперь я хочу вставить/добавить столбец IS_True в таблице Employee на основе:

A.ID = B.ID where ((A.Name Is Not Null) and (B.ID is null))

Ищете одно представление, которое делает это без дублирования данных в таблице Employee.

Employee таблицы

ID|Name|Salary 1|B |333 3|B |333 4|B |333 1|B |333

Manager таблиц

ID |Name 1 |A 3 |B 4 |B Null|A

Результаты:

ID|Name|Salary|IS_True 1|B |333 |YES 3|B |333 |NO 4|B |333 |NO 1|B |333 |YES

Ваша помощь очень ценится

Лучший ответ:SELECT a.*, CASE WHEN a.name IS NOT NULL AND b.id IS NULL THEN ‘YES’ ELSE ‘NO’ END AS is_true FROM employee a LEFT JOIN (SELECT DISTINCT id FROM manager) b ON a.id = b.id Ответ №1

попробуйте это: добавьте предложение where с соединением

SELECT a.*, CASE WHEN a.name IS NOT NULL AND b.id IS NULL THEN ‘YES’ ELSE ‘NO’ END AS is_true FROM employee a LEFT JOIN (SELECT DISTINCT id FROM manager) b ON a.id = b.id where b.name is null

Оцените статью
Добавить комментарий