Normalización de Bases de Datos con Power Query · Hazlo Con Excel

← Volver al blog

Normalización de Bases de Datos con Power Query

Descarga el archivo de práctica de este tutorial

Recibe el archivo de ejemplo para seguir la demostración paso a paso.

¡Ya casi lo tienes!

Revisa tu bandeja de entrada, en minutos recibirás la plantilla.

La normalización de bases de datos es la manera de organizar tus datos para tener integridad y evitar redundancia — es decir, que la información sea coherente y no se repita innecesariamente, para poder escalar tu base de datos sin problemas. Vamos a transformar una tabla extensa de transacciones en un esquema de estrella (una tabla de hechos conectada a varias tablas de búsqueda) usando Power Query.

Paso 1: Identifica la redundancia en tu tabla actual

Una tabla de transacciones típica repite, en cada fila, toda la información del cliente y de la tienda — aunque ese mismo cliente o tienda ya haya aparecido en filas anteriores:

ABCDEF
ID TransacciónID ClienteNombre ClienteCiudad ClienteID TiendaPaís Tienda
210015Ana TorresMonterrey12México
310025Ana TorresMonterrey18España
410039Luis VegaBogotá12México

Fíjate cómo “Ana Torres” y “Monterrey” se repiten en dos filas distintas — esa es la redundancia que queremos eliminar, separando la información en tablas independientes.

Paso 2: Trae tu tabla completa a Power Query

Datos → Obtener datos → Desde un archivo → Desde libro de Excel, selecciona tu hoja de transacciones y elige Transformar datos para abrir el editor de Power Query.

Paso 3: Crea una tabla de búsqueda por cada entidad (cliente, tienda, producto)

Por cada entidad que se repite (cliente, tienda, producto), vas a duplicar la consulta original y quedarte solo con sus columnas:

  1. Clic derecho sobre la consulta de transacciones → Duplicar.
  2. Renombra la copia (por ejemplo, “Clientes”).
  3. Selecciona todas las columnas que pertenecen a esa entidad (mantén Shift para seleccionar un rango de columnas continuas).
  4. Clic derecho → Quitar otras columnas — esto elimina todo lo que no seleccionaste.
  5. Inicio → Quitar filas → Quitar duplicados, para quedarte con una fila por cliente único.

Repite este proceso para cada entidad (Tienda, Producto…). El resultado es una tabla de búsqueda limpia por cada una:

ABC
ID ClienteNombre ClienteCiudad Cliente
25Ana TorresMonterrey
39Luis VegaBogotá

Tip para verificar: selecciona la columna de ID → pestaña Vista → Perfil de columna (activa “Cargar el conjunto de datos completo” si tu tabla tiene más de 1,000 filas, ya que por defecto Power Query solo analiza una muestra) — si “Distintos” y “Únicos” muestran el mismo número, confirmas que no quedaron duplicados.

Paso 4: Reduce la tabla original a solo IDs (tu tabla de hechos)

Regresa a tu consulta original de transacciones — esta se convierte en tu tabla de hechos (contiene los eventos que ocurren día a día: nuevas transacciones). Selecciona y elimina todas las columnas descriptivas (nombre, ciudad, país…), dejando solo las columnas de ID:

ABCD
ID TransacciónID ClienteID TiendaID Producto
21001512301
31002518112
41003912301

Toda la información descriptiva ya vive en sus propias tablas de búsqueda — la tabla de hechos solo necesita los IDs para poder conectarse a ellas cuando haga falta.

Paso 5: Carga todo al modelo de datos (no a la hoja de cálculo)

Para cada consulta (transacciones, clientes, tienda, producto): Inicio → Cerrar y cargar en… → Crear únicamente la conexión + marca Agregar esto al modelo de datos. Esto es importante especialmente si tu tabla de hechos tiene miles o millones de filas — recuerda que una hoja de Excel tiene un límite de poco más de 1 millón de filas, mientras que el modelo de datos puede manejar decenas de millones sin problema.

Paso 6: Conecta las tablas en la vista de diagrama

  1. Ve a Power Pivot → Administrar modelo de datos.
  2. Cambia a la Vista de diagrama.
  3. Arrastra el campo ID de cada tabla de búsqueda (por ejemplo, “ID Cliente” en la tabla Clientes) hacia el mismo campo en la tabla de hechos (Transacciones) — esto crea una relación uno a muchos.
  4. Repite para Tienda y Producto.

Buena práctica: coloca visualmente las tablas de búsqueda arriba y la tabla de hechos debajo — así se ve de inmediato el “esquema de estrella” (la tabla de hechos en el centro, conectada a cada tabla de búsqueda alrededor).

Paso 7: Analiza con una tabla dinámica basada en el modelo completo

Inserta una tabla dinámica y elige que se base en el modelo de datos (no en una sola hoja). Vas a poder combinar campos de todas tus tablas conectadas — por ejemplo, agrupar por país de la tienda (de la tabla Tienda) mientras cuentas transacciones (de la tabla de hechos), o agregar una segmentación de datos por marca de producto para filtrar todo el reporte a la vez.

Este esquema también te deja listo para dar el siguiente paso: escribir medidas con DAX para análisis todavía más avanzados, directamente sobre este modelo ya normalizado.