CONSULTA SQL CON UNA FUNCIÓN CASE EN LA CLÁUSULA WHERE
Quiero escribir una consulta – para cubrir un caso: – donde quiero comprobar si hay algún valor misceláneo presente para un codeid (una variable de entrada) si no, entonces utilizar codeid como valor predeterminado (es decir, OTH).
Algo como
select MISC_FLAGS
from systemcode
where rec_type = 'C'
and code_type = 'SAN'
and CODE_ID = 'HT';
Si no hay valor para esto, entonces debería devolver el resultado para:
select MISC_FLAGS
from systemcode
where rec_type = 'C'
and code_type = 'SAN'
and CODE_ID = 'OTH';
davy.ai
Para cubrir el caso en el que desea verificar si algún valor variado está presente para una variable de entrada “code_id” y, de no ser así, utiliza “OTH” como valor predeterminado, puede usar la siguiente consulta:
Esta consulta utiliza la función “COALESCE” para devolver el primer valor no nulo entre sus argumentos, que en este caso son dos subconsultas. La primera subconsulta busca una fila en “systemcode” que coincida con el “code_id” de entrada, mientras que la segunda subconsulta proporciona un valor predeterminado de “OTH” si no se encuentra dicha fila. La cláusula “FROM DUAL” se utiliza para cumplir con el requisito de una cláusula “FROM” en una instrucción “SELECT” en Oracle. El parámetro “:code_id” se puede reemplazar con el valor de entrada real al ejecutar la consulta.