M$ SQL ETL-Prozess Datumsbestandteile

airliner

Erfahrenes Mitglied
Moin,

nach langer Zeit finde ich mal wieder den Weg hierher.
Das "Problem" beläuft sich auf folgendes: Wir sollen einen ETL-Prozess mit Hilfe des SQL Server Business Intelligence Developer Studio modellieren. Die Daten aus drei Ursprungsdatenbanken sollen in unser STAR-Schema übertragen werden (warum wir kein Snowflake-Schema nutzen dürfen, fragt mich nicht). Bis jetzt lief es recht gut, die ersten drei Dimensionen sind gefüllt.
Nur bei der Zeitdimension hapert es gewaltig.
Als Ausgang haben wir knapp 1100 Datensätze im datetime-Format. Diese sollen einmal so übernommen werden in die neue Dimension. Zusätzlich sollen die Datensätze aber noch nach Tag (int), Monat (int), Quartal (int), Jahr (int) und Feiertag (bool) "aufgespalten" werden.
Entweder habe ich bis jetzt noch nicht die richtige "Funktion" gefunden oder ich nutze "bedingtes Teilen" nicht richtig. Dort habe ich jedenfalls Datumsfunktionen gefunden, die mir die geforderten Bestandteile "herauslösen" können sollen.
Wie ich es auch drehe und wende, es werden Fehler geworfen.
Entweder vermutet der Debugger eine Division durch 0, zu wenig Arbeitsspeicher (bei 8GB und einer Auslastung von max. 40% schwer vorstellbar) oder der Ausgabewert soll ein bool sein (Warum zur Hölle?).

Über Tipps und andere Herangehensweisen bedanke ich mich jetzt schon einmal!
 
Kleines Update meinerseits: Es war falsch "bedingtes Teilen" zu verwenden. Stattdessen sollte man "Abgeleitete Spalte" nutzen. Nur warum der Fehler geworfen wurde, weiß ich bis heute noch nicht.

Bleibt nur die Frage zu klären, wie setze ich den Feiertag auf 0 oder 1. Da habe ich bis jetzt noch nichts gefunden.
 
Zurück