Funciones nulas de MySQL
Funciones MySQL IFNULL() y COALESCE()
Mira la siguiente tabla de "Productos":
P_Id | ProductName | UnitPrice | UnitsInStock | UnitsOnOrder |
---|---|---|---|---|
1 | Jarlsberg | 10.45 | 16 | 15 |
2 | Mascarpone | 32.56 | 23 | |
3 | Gorgonzola | 15.67 | 9 | 20 |
Suponga que la columna "UnitsOnOrder" es opcional y puede contener valores NULL.
Mire la siguiente instrucción SELECT:
SELECT ProductName, UnitPrice * (UnitsInStock + UnitsOnOrder)
FROM Products;
En el ejemplo anterior, si cualquiera de los valores de "UnitsOnOrder" es NULL, el resultado será NULL.
Función MySQL IFNULL()
La función MySQL IFNULL()
le permite devolver un valor alternativo si una expresión es NULL.
El siguiente ejemplo devuelve 0 si el valor es NULL:
SELECT ProductName, UnitPrice * (UnitsInStock + IFNULL(UnitsOnOrder, 0))
FROM Products;
Función MySQL COALESCE()
O podemos usar la función, así:
COALESCE()
SELECT ProductName, UnitPrice * (UnitsInStock + COALESCE(UnitsOnOrder, 0))
FROM Products;