Когда я пытаюсь выполнить этот код без случая и так же, как ... и TRANSFORMER IN (SELECT REGEXP_SUBSTR ...), он работает. Однако добавление случая, чтобы захватить все, если TID является NULL дает мне ошибку ..Получение ORA-01427: однострочный подзапрос возвращает более одной строки Ошибка
(select t.DAY_DATE as D, t.* from pplco_transformer_kva t where
--NORMALLY '03-MAR-14' IS A VARIABLE
DAY_DATE = TO_DATE('03-MAR-14')and TRANSFORMER IN(
--NORMALLY '26113S36753,25761S36662' IS A VARIABLE
CASE WHEN '26113S36753,25761S36662' IS NULL THEN(
(t.TRANSFORMER)
)ELSE(
SELECT REGEXP_SUBSTR('26113S36753,25761S36662', '[^,]+', 1,LEVEL)
FROM DUAL CONNECT BY
regexp_substr('26113S36753,25761S36662', '[^,]+', 1, level) is
not null)
END
)
);
Вы пытались выполнить 'выберите REGEXP_SUBSTR() из dual' только и посмотреть, если это ожидаемый результат? –