Modellierung
Die Granularität einer Faktentabelle
Was eine Zeile einer Faktentabelle darstellt: Legen Sie das zuerst fest.
Wählen Sie die feinste Granularität, die die Quelle bietet (eine Bestellposition, ein Ereignis): Aggregieren kann man nach oben, nie nach unten. Jede Kennzahl muss auf dieser Granularität stimmen; eine Kennzahl auf einer anderen Granularität gehört in eine andere Faktentabelle.
SELECT COUNT(*) AS row_count,
COUNT(DISTINCT order_id) AS orders,
COUNT(DISTINCT order_id || '-' || line_no) AS order_lines
FROM order_lines;
| row_count | orders | order_lines |
|---|---|---|
| 5473 | 2500 | 5473 |