Tema: NVL en MYSQL
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/10/2008, 18:12
Avatar de mij
mij
 
Fecha de Ingreso: enero-2007
Mensajes: 70
Antigüedad: 18 años
Puntos: 1
Respuesta: NVL en MYSQL

siento "resucitar" este tema pero en google sale en los primeros resultados y le puede venir bien a mucha gente:

El equivalente en MySQL de NVL es IFNULL (del manual de MySQL):
Código:
IFNULL(expr1,expr2)
Si expr1 no es NULL, IFNULL() retorna expr1, de otro modo retorna expr2. IFNULL() retorna un valor numérico o de cadena de caracteres, en función del contexto en que se usa.
Código:
mysql> SELECT IFNULL(1,0);
        -> 1
mysql> SELECT IFNULL(NULL,10);
        -> 10
mysql> SELECT IFNULL(1/0,10);
        -> 10
mysql> SELECT IFNULL(1/0,'yes');
        -> 'yes'
El valor por defecto de retorno de IFNULL(expr1,expr2) es el más “general” de las dos expresiones, en el orden STRING, REAL, o INTEGER. Considere el caso de una tabla basada en expresiones o donde MySQL debe almacenar internamente un valor retornado por IFNULL() en una tabla temporal:
Código:
CREATE TABLE tmp SELECT IFNULL(1,'test') AS test;
En este ejemplo, el tipo de la columnatest es CHAR(4).