La solicitud

De Rachel Kim, Gerente de Categoría
Tu objetivo
El modelo tiene order_items (una fila por línea de pedido) y products (una fila por producto), todavía sin relación. Crea la relación que permite que un filtro sobre products llegue a order_items: las columnas correctas, la cardinalidad correcta, una dirección de filtro cruzado única, activa.
- Todas las relaciones que el informe necesita, bien configuradaspendiente
Tu modelo
Las tablas del modelo: order_items (order_item_id, order_id, product_id, quantity, unit_price, discount_pct, line_total), products (product_id, name, category, subcategory, unit_price, unit_cost, launched_on, is_active).
Cargando el editor…
Solución de referencia
Mote revisa tu resultado
Presiona Comprobar. Mote completa tu respuesta y la compara con lo que necesita el informe.
Lo que recibe Rachel, y por qué
La lección
Dos tablas en un informe son desconocidas hasta que las relacionas. La segmentación de Rachel
filtra products, pero sus números de ventas vienen de order_items, así que el filtro no tiene
adónde ir y todas las categorías muestran el total general.
Claves: la columna que comparten ambas tablas
Una relación hace coincidir una columna de cada tabla. En un lado es la clave primaria de
la tabla, la columna con exactamente una fila por valor: products[product_id] nombra un
producto. En el otro lado es una clave externa, una columna que apunta a esa clave y puede
repetirse: order_items[product_id] aparece en cada línea de pedido que vendió el producto.
Cardinalidad: cuántas filas coinciden
- Varios a uno (*:1): muchas líneas de pedido, un producto. El caso normal, y el que quieres.
- Uno a uno (1:1): ambos lados únicos. Raro; a menudo es señal de que las dos tablas deberían ser una.
- Varios a varios (*:*): ningún lado único. Power BI lo permite, pero los totales se vuelven difíciles de leer. Evítalo a menos que sepas por qué lo necesitas.
Power BI comprueba los datos: si declaras un lado «uno» cuyos valores se repiten, rechaza la relación. Este diagrama de práctica hace lo mismo.
Dirección: en qué sentido fluyen los filtros
La dirección de filtro cruzado (cross-filter direction) dice qué tabla filtra a cuál. Con
Single, el lado uno (la dimensión, products) filtra el lado varios (el hecho,
order_items). Eso es lo que Rachel necesita: elige Lighting, ve las líneas de pedido de
Lighting. Both también envía filtros de vuelta de los hechos a las dimensiones; tiene usos,
pero como valor predeterminado causa rutas ambiguas e informes lentos.
En Power BI Desktop
Abre la vista Modelo (el tercer icono de la barra izquierda) y arrastra product_id de
order_items sobre product_id en products. Power BI adivina la cardinalidad y la dirección;
compruébalas haciendo doble clic en la línea, o usa Modeling → Manage relationships → New y
elige ambas columnas, Many to one (*:1), Cross filter direction: Single y Make this
relationship active. En este diagrama de práctica, el formulario bajo el lienzo hace lo mismo.
Errores comunes
- Relacionar por nombre. Los nombres se repiten y cambian. Las claves no.
- Varios a varios por accidente. Normalmente significa que un lado no es la columna clave.
- Ambas direcciones «por si acaso». Mantén Single a menos que un ticket te dé una razón.
¡Linterna encendida!
Practicaste: relationshipcardinalitymany to onecross filter directionprimary keyforeign key
- Resuelto
- Sin pistas
- Al primer intento
