У меня есть два вычисленных столбца в ORACLE (Ex3 и EX12).Таким образом, везде, где оба поля имеют значение (например, ID 118189AC), идентификаторы хотели бы сохранить значение в EX3, но превратить EX12 в NULL.Есть предложения?
SELECT *
FROM
(SELECT ID,
CASE
WHEN PORT IN ('CAP')
THEN 3
ELSE NULL
END AS EX3,
CASE
WHEN PORT NOT IN ('TEST1', 'TEST2', 'TEST3')
THEN 12
ELSE NULL
END AS EX12
FROM LAN.DETAILS)
WHERE (EX3 IS NOT NULL OR EX12 IS NOT NULL)
ORDER BY ID ASC
ID EX3 EX12
118051PU 12
118052PU 12
118189AC 3 12
118397PU 12
118451AC 3 12
119343AC 3 12
119387PU 12
119484PU 12
119772PU 12
119997PU 12
120320AC 3 12