Problema
Partimos de la siguiente tabla. Deseamos fusionar las columnas num1 y num2 en una nueva, de manera que no hay ningún valor nulo.
Solución
En Ms Access no disponemos de la función coalesce que sirve precisamente para este propósito. Como alternativa empleamos la función nz. Creamos una consulta con un campo calculado —comb— con la siguiente expresión.
comb: Nz([num1];[num2])*1
SELECT Tabla.id, Tabla.nombre, Tabla.num1, Tabla.num2, Nz([num1],[num2])*1 AS comb FROM Tabla;
Resultado
Notas
La función Nz por defecto —si dejamos el segundo argumento en blanco— devuelve un cero cuando un campo es nulo. En este caso, le especificamos otro campo para devolver ese valor en su lugar. Multiplicamos por 1 la expresión para que el tipo de datos del nuevo campo sea número en lugar de texto. Sin multiplicar por 1 el resultado sería texto, con los números alineados a la izquierda.
Más de dos campos
Podemos seguir el mismo procedimiento para más de dos campos, anidando la función Nz. Por ejemplo con 3 campos:
comb:Nz([num1];Nz([num2];[num3]))*1
Entradas relacionadas
- Cálculo de expresiones con valores nulos en Ms Access
- Incompatibilidad de Excel con consulta de Access usando NZ
Referencias
No hay comentarios:
Publicar un comentario