Данные в Compania
таблице:
Данные в Periodo
таблице:
Данные в VAC_PERIODOCIA
таблице:
Я хочу показать все компании ( COMPANIA
) и значение в ( vac_aplica
столбце) при поиске Periodo
, независимо от того, зарегистрированы они или нет.
Я пробовал это:
SELECT
COMPANIA.CIA_CLAVE, COMPANIA.CIA_NOM,
CASE
WHEN VAC_PERIODOCIA.VAC_APLICA IS NULL
THEN 'N'
ELSE 'Y'
END VAC_APLICA
FROM
COMPANIA
LEFT JOIN
VAC_PERIODOCIA ON COMPANIA.CIA_CLAVE = VAC_PERIODOCIA.CIA_CLAVE
WHERE
VAC_PERIODOCIA.PERIODO = '2018 - 2019'
Результат:
Я хочу вот что:
Решение проблемы
Прежде всего, вопрос беспорядок: таблицы и столбцы из вопроса и примеров, которые вы нам предоставили, отличаются. Пожалуйста, исправьте это.
Я не говорю по-испански, поэтому могу только предположить, что VAC_PERIODICA — это Periodo. В этом случае вам нужно переместить то, что у вас есть в условии, в предложение соединения. Как это
SELECT COMPANIA.CIA_CLAVE,COMPANIA.CIA_NOM,
CASE
WHEN Periodo.valor IS NULL THEN 'N'
ELSE 'Y'
END VAC_APLICA
FROM Compania
LEFT JOIN Periodo
ON COMPANIA.CIA_CLAVE = Periodo.valor
AND Periodo.PERIODO = '2018 - 2019'
order by 1
Комментариев нет:
Отправить комментарий