Tengo una consulta de Oracle y parte de ella está calculando algún valor con DECODE. Por ejemplo:oráculo: decodificar y subconsulta seleccionar resultado
SELECT ...,
(SELECT DECODE((SELECT 23 FROM DUAL),
0, null,
(SELECT 23 FROM DUAL))
FROM DUAL)
FROM ...
Aquí el valor "23" se calcula en tiempo de ejecución, y es bastante complicado une - varias tablas, utiliza PARTITION BY
etc Así que quiero evitar la ejecución de la misma subconsulta si el valor no es "0 ". ¿Hay alguna manera de escribir algo como esto?
SELECT ...,
(SELECT DECODE ((SELECT 23 FROM DUAL) as test,
0, null,
test)
FROM DUAL)
FROM ...
gracias por su entrada simple y útil. – hanumant