Next
Next: Formatos de Fecha Up: Algunas funciones útiles Previous: Algunas funciones útiles
Valores nulos y decodificación de expresiones
Entre las funciones que Oracle implementa, y que pueden serllamadas desde una sentencia SELECT, podemos destacar NVL, que trata los valores nulos, y DECODE, que permite evaluar una expresión y devolver diversos valores dependiendo de la expresión.
Lafunción NVL toma dos argumentos:
NVL(
La función evalúa la expresión, y si esta es un valor nulo, devuelve el valor por defecto indicado (que, por supuesto, debe ser delmismo tipo que la expresión). Así, veamos la siguiente sentencia (la orden SET NULL se usa para identificar más claramente los nulos):
SET NULL "Desconocida";
SQL> SELECT PRIMA, NVL(PRIMA,0) ASPrima_sin_nulos
2 FROM JUGADOR;
PRIMA PRIMA_SIN_NULOS
------------ ---------------
Desconocida 0
3000 3000
0 0
00
Desconocida 0
2000 2000
Desconocida 0
0 0
0 0
0 0
10 filasseleccionadas.
Tanto la expresión como el valor pueden ser más complejos. Así, por ejemplo, NVL(SALARIO+PRIMA,SALARIO), devuelve la suma de salario y prima si la suma no es nula, y sólo el salario en casocontrario.
La función DECODE es más compleja, y puede tener un número variable de argumentos. También evalúa una expresión, y lo que sigue está formado por pares . Si la expresión se evalúa a , lafunción devuelve . El último parámetro, resultado_en_otro_caso, es el valor que devuelve la función en el caso de que la evaluación de la expresión no coincida con ninguno de los valores indicados. Lasintaxis general es la siguiente.
DECODE(
[,
[,
)
Por ejemplo, supongamos...
Regístrate para leer el documento completo.