Fórmulas en Notion: calcular valores dentro de una base de datos
Las fórmulas en Notion son propiedades que calculan un valor a partir de otras propiedades de la misma entrada. Si tienes una base de datos de proyectos con una fecha de inicio y una fecha de fin, una fórmula puede calcular automáticamente el número de días de duración. Si tienes un precio y un número de horas, una fórmula puede calcular el total.
Qué es la propiedad fórmula
Al añadir una propiedad de tipo “Fórmula” a una base de datos, Notion abre un editor donde introduces la expresión. La fórmula puede devolver cuatro tipos de valores: un número, un texto, una fecha o un booleano (verdadero/falso).
Para referenciar otras propiedades dentro de la fórmula, en el editor actual de Notion simplemente escribes el nombre de la propiedad y el editor te la sugiere para insertarla — ya no hace falta escribir nada más. La sintaxis prop("Precio") que verás en los ejemplos de este módulo es la notación clásica para referenciar propiedades por escrito (la forma en que se documentan las fórmulas, y la que usaban versiones anteriores del editor). Si copias una fórmula antigua de internet con prop("..."), Notion la sigue aceptando: al pegarla, la convierte automáticamente al formato actual.
Operaciones matemáticas
Para cálculos numéricos, Notion admite los operadores estándar: suma (+), resta (-), multiplicación (*), división (/) y potencia (^). También hay funciones como abs() (valor absoluto), round() (redondeo), floor() y ceil().
prop("Precio") * prop("Horas")
Concatenación de texto
Puedes unir valores de texto con el operador +. Si quieres mostrar el nombre y el apellido juntos:
prop("Nombre") + " " + prop("Apellido")
El problema surge cuando mezclas un número con texto. Notion no lo permite directamente. La solución es la función format(), que convierte un número en texto:
"Total: " + format(prop("Precio") * prop("Horas")) + " €"
Lógica condicional con if()
La función if() permite devolver un valor diferente según una condición. Acepta siempre tres argumentos: la condición, el valor si es verdadera, y el valor si es falsa.
if(prop("Estado") == "Completado", "✓ Listo", "Pendiente")
Las condiciones pueden anidarse para crear lógica más compleja:
if(prop("Prioridad") == "Alta", "🔴 Urgente",
if(prop("Prioridad") == "Media", "🟡 Normal", "🟢 Baja"))
Funciones de fecha
Las fórmulas de fecha son especialmente útiles para calcular plazos y duración:
now(): devuelve la fecha y hora actualesdateAdd(fecha, número, unidad): añade tiempo a una fecha.dateAdd(prop("Inicio"), 30, "days")suma 30 días.dateSubtract(fecha, número, unidad): resta tiempo a una fechadateBetween(fecha1, fecha2, unidad): calcula la diferencia entre dos fechas en la unidad indicada (“days”, “weeks”, “months”, “years”, “hours”)dateCompare(fecha1, operador, fecha2): compara dos fechas (igual, antes de, después de)
Ejemplo práctico: calcular cuántos días faltan para la fecha límite.
dateBetween(prop("Fecha límite"), now(), "days")
La regla de los tipos
Notion es estricto con los tipos de datos: no puedes mezclar un número con un texto directamente, ni operar con una fecha como si fuera un número. Si intentas hacerlo, la fórmula devuelve un error. La función format() es la solución para convertir números a texto cuando necesitas mostrarlos dentro de una cadena.