Dataview en Obsidian: guía práctica con consultas para copiar
Dataview es el plugin de la comunidad que convierte un vault de Obsidian en algo que se puede consultar. Sigues escribiendo notas normales, añades unas propiedades al principio de cada una y Dataview construye con ellas listas y tablas vivas: cada proyecto que vence este mes, cada libro que estás leyendo, cada cliente al que no llamas desde hace dos meses. No copia ni exporta nada, así que las tablas cambian en cuanto cambia una nota. Esta guía cubre las consultas que vas a usar de verdad, con ejemplos sacados de los paneles de nuestros propios vaults.
Qué hace el plugin Dataview de Obsidian
Dataview lee tres tipos de datos de tus notas. Las propiedades son el bloque YAML del principio de la nota, entre dos líneas de tres guiones. Los campos en línea se escriben en el cuerpo como clave:: valor, o entre corchetes en la línea de una tarea. Los campos implícitos son los que Obsidian ya conoce, como file.name, file.ctime, file.tags o file.link. Una consulta es un bloque de código con el lenguaje dataview, que en la vista de lectura se muestra como lista, tabla, lista de tareas o calendario. Una nota con propiedades tiene este aspecto:
---
status: activo
due: 2026-11-27
owner: Lina
---
# Rediseño de la webFíjate en que las claves (status, due, owner) van en inglés y sin tildes, aunque los valores estén en español. Dataview admite claves en español, pero una tilde o una eñe en fecha_límite te obliga a escribirla igual en cada consulta, y las plantillas que descargues de otros sitios usarán casi siempre las claves en inglés. Es la convención que siguen todos nuestros vaults.
Instala Dataview y escribe tu primera consulta
Abre Ajustes, Complementos comunitarios, desactiva el modo restringido si sigue activo, pulsa Buscar y busca Dataview. Instálalo y actívalo, y ya está: no hay nada que configurar antes de la primera consulta. Crea una nota, añade un bloque de código con el lenguaje dataview y empieza por la consulta más sencilla, una lista de todas las notas de una carpeta:
```dataview
LIST
FROM "Proyectos"
```Pasa a la vista de lectura y el bloque se convierte en una lista de enlaces. Cambia LIST por TABLE, nombra las propiedades que quieres como columnas y ya tienes un seguimiento de proyectos:
```dataview
TABLE status, due, owner
FROM "Proyectos"
WHERE status = "activo"
SORT due ASC
```Sintaxis de las consultas de Dataview: FROM, WHERE, SORT y GROUP BY
Toda consulta empieza por su tipo, LIST, TABLE, TASK o CALENDAR, seguido de comandos opcionales que se ejecutan en orden. FROM elige el origen: una carpeta entre comillas, una etiqueta como #libro o [[]] para las notas que enlazan con la actual, y los orígenes se combinan con AND, OR y un signo menos delante para excluir. WHERE deja solo las filas que cumplen la condición, por ejemplo WHERE status = "activo" o WHERE due <= date(today). SORT ordena por uno o varios campos, de forma ascendente o descendente, y LIMIT corta el resultado a un número de filas. Las palabras de la consulta van siempre en inglés, aunque tus carpetas y valores estén en español.
GROUP BY es donde las tablas se vuelven útiles. Junta las filas que comparten un valor en una fila por grupo, y las notas originales pasan a una lista llamada rows, que puedes contar con length(rows) o sumar con sum(rows.value). El valor del grupo se llama key. Esta consulta cuenta los proyectos por estado:
```dataview
TABLE rows.file.link AS "Notes", length(rows) AS "Count"
FROM "Proyectos"
GROUP BY status
```Dos detalles despistan a casi todo el mundo. Un nombre de propiedad con guion se leería como una resta, así que hay que escribirlo como row["date-started"], que es como nuestro vault de notas de libros lee las fechas de lectura. Y WITHOUT ID después de TABLE oculta la primera columna automática con el nombre del archivo, para que elijas tú la primera columna.
Tareas con Dataview en Obsidian: consultar casillas de todo el vault
Una consulta TASK devuelve las casillas, no las notas, y puedes marcarlas directamente en los resultados. Dataview lee la fecha de vencimiento escrita como campo en línea en la tarea, y también entiende la fecha 📅 que escribe el plugin Tasks:
- [ ] Enviar el presupuesto revisado [due:: 2026-10-28]```dataview
TASK
FROM "Proyectos"
WHERE !completed AND due AND due <= date(today)
GROUP BY file.link
```Si las tareas son el centro de tu sistema, el plugin Tasks tiene una sintaxis más completa y repeticiones, y nuestra guía de tareas en Obsidian compara los dos. Dataview es mejor opción cuando las tareas son una parte de un panel que también enseña notas y propiedades.
Ejemplos de tablas de Dataview en nuestros vaults
Cada consulta de esta sección funciona en un vault que puedes descargar, así que puedes abrirlo y ver el resultado con datos reales. El vault de gestión de proyectos lista los proyectos activos por fecha de entrega. El vault de campaña de D&D agrupa a cada PNJ por lugar en su pantalla del máster con GROUP BY location. El vault de notas de libros enseña lo que estás leyendo y lo que has terminado, con su valoración. El vault para estudiantes lista las entregas desde hoy en adelante con WHERE due AND due >= date(today). Nuestra plantilla CRM para Obsidian es la que más lejos llega: seguimientos de la semana, importe del embudo por fase y contactos con los que no hablas desde hace 60 días, con date(today) - last_contact > dur(60 days).
Dataview o Bases en Obsidian
Bases es un plugin principal que llegó a Obsidian en 2025. También convierte propiedades en tablas, pero la vista se construye con clics en lugar de escribir una consulta, y los valores se pueden editar en la propia tabla. Una base se guarda como archivo .base y su definición es YAML legible:
filters:
and:
- file.inFolder("Proyectos")
views:
- type: table
name: All
groupBy:
property: status
direction: ASCUsa Bases cuando quieras una vista editable, tipo hoja de cálculo, de las notas y sus propiedades, sin instalar nada. Quédate con Dataview para lo que Bases no hace: consultas incrustadas en mitad de una nota, consultas de tareas, enlaces entre notas como origen, cálculos con fechas como "sin tocar en 60 días" y consultas en JavaScript con DataviewJS. Muchos vaults usan los dos, y el vault CRM trae un embudo en Bases junto a su panel de Dataview para que los compares con los mismos datos.
Por qué una consulta de Dataview no muestra resultados
Casi todas las tablas vacías tienen una de estas causas, y dos de ellas son muy nuestras. La primera es la fecha. Si escribes due: 28/10/2026, como hacemos en España y Latinoamérica, Dataview la guarda como texto y la comparación con date(today) nunca coincide. Escribe siempre AAAA-MM-DD. La segunda son los decimales. importe: 1500,50 con coma también es texto para Dataview, y sum() lo ignora, así que los importes van con punto (1500.50) o sin decimales. Las otras dos son universales: la carpeta del FROM no coincide con la ruta real, que distingue mayúsculas y necesita la ruta completa en subcarpetas, o sigues en la vista de edición, donde la consulta aparece como código. Si quieres que las fechas de las tablas salgan como 28/10/2026, ve a los ajustes de Dataview y pon dd/MM/yyyy en el formato de fecha. Ese campo usa los códigos de Luxon, con yyyy en minúsculas, y no los de las plantillas de Obsidian.