Dieser Abschnitt bietet eine kurze Übersicht, wie die Spalten verarbeitet werden. Sowohl Grafik als auch Text stellen nicht die exakte Funktion des zugehörigen Codes dar. Sie stellen eine Annäherung dar, welche versucht, die Komplexität möglichst einfach darzustellen. Zum besseren Verständnis sind weiter unten Beispiele aufgeführt.
Schritt 1: Basisdaten
Im ersten Schritt wird eine temporäre Tabelle (tmp_table_1) mit allen Spalten des Spaltenlayouts erstellt, sowohl später sichtbare als auch unsichtbare Spalten. Dabei werden entweder
- Daten aus der virtuellen Tabelle genutzt --> physische, logische, vorbereitende Spalte
- oder ein Lookup auf eine weitere Tabelle durchgeführt --> lookup, vorbereitende Spalte
- oder leere Spalten angelegt (null::datentyp as spaltenname) --> weiterverarbeitende, berechnete Spalte
Im zweiten Schritt werden die Daten aus der in Schritt 1 erstellten tmp_table_1 in eine weitere temporäre Tabelle (tmp_table_2) überführt und dabei aggregiert. Welche Spalten aggregiert werden, wird über das Merkmal Aggregierte Spalte festgelegt. Dabei wird entweder
- summiert --> physische, logische, lookup Spalte
- oder die Funktion ausgewertet --> weiterverarbeitende Spalte
Bei der Summierung wird der angegebene Feldname (Ziel) in eine sum()-Funktion eingefügt. Bei einer Funktion wird die Eingabe im Feld Funktion genutzt.
Schritt 3: SelektionIm dritten Schritt findet die finale Selektion statt. Jede Spalte, deren Merkmal Sichtbare Spalte auf 1 gesetzt ist, wird selektiert. Um bei der Selektion noch eine Berechnung oder Änhliches vorzunehmen, wird das Merkmal Sichtbare Spalte auf 0 gesetzt und eine Berechnete Spalte angelegt. Es wird dann die Funktion der Berechneten Spalte in den select geschrieben.
