fecha - MySQL: Typecasting NULL a 0
mysql convert time to string (1)
Use IFNULL(column, 0)
para convertir el valor de la columna a cero. Alternativamente, la función COALESCE hará lo mismo, excepto que (1) COALESCE
cumple con ANSI, IFNULL
no, y (2) COALESCE
toma un número arbitrario de columnas / valores y devolverá el primer valor no nulo que le haya pasado. .
Supongamos la siguiente tabla (por ejemplo, un resultado de varias instrucciones de combinación interna):
id | column_1 | column_2
------------------------
1 | 1 |
2 | 2 | 2
3 | | 3
Que podría, por ejemplo, obtener de la siguiente declaración:
select a.id, t1.column_1, t2.column_2
from a
left join t1 on a.id = t1.id
left join t2 on a.id = t2.id
Ahora, si me gustaría resumir t1.column_1 y t2.column_2 de la siguiente manera
select
a.id,
t1.column_1,
t2.column_2,
(t1.column_1 + t2.column_2) as cumulated
from a
left join t1 on a.id = t1.id
left join t2 on a.id = t2.id
El reslut se verá de la siguiente manera:
id | column_1 | column_2 | cumulated
------------------------------------
1 | 1 | NULL | NULL
2 | 2 | 2 | 4
3 | NULL | 3 | NULL
Mi pregunta básicamente es: ¿hay alguna manera de escribir NULL en 0 para poder hacer algo de matemática?
He intentado CONVERT(t1.column_1, SIGNED)
y CAST(t1.column_1 as SIGNED)
, pero un NULL
mantiene como NULL
.