Я пытаюсь написать простой оператор IF/ELSE в Teradata. Насколько я понимаю, вы должны использовать CASE. Я хочу написать инструкцию, которая будет проверять, если столбец NOT NULL и что-то отображать. ELSE, если это NULL, отобразите что-нибудь еще.SQL case statement в Teradata
Каждый пример, который я нашел, просто заменяет одно значение строкой или строкой. Я ищу что-то более вдоль линий этого в которой используется ТОГДА заявление, чтобы сделать еще один SELECT:
SELECT CARS.VIN_NUM, CARS.DRIVER_NAMES
CASE
WHEN CARS.FUEL IS NOT NULL THEN SELECT CARS.DESTINATIONS
WHEN CARS.FUEL IS NULL THEN SELECT CARS.GAS_STATIONS
END
FROM AUTOMOBILES CARS
WHERE CARS.VIN_NUM IN
('345353',
'354632',
'535231')
ORDER BY CARS.VIN_NUM
Конечный результат должен быть таблица отображения VIN_NUM, DRIVER_NAMES, направления или GAS_STATIONS на основе CASE. Возможно ли что-то подобное или я ошибаюсь?
Что может быть еще более упрощен до: ДЕЛУ КОГДА CARS.FUEL НЕ NULL THEN CARS. НАЗНАЧЕНИЯ ELSE CARS.GAS_STATIONS END или COALESCE (CARS.GAS_STATIONS, CARS.DESTINATIONS) – dnoeth
Спасибо! У меня также не было общего после первого оператора SELECT. – user1174834