Anfragen in Operativen Systemen und Data Warehouses
|
|
- Helmut Bayer
- vor 8 Jahren
- Abrufe
Transkript
1 Data Warehouses Sommersemester 011 Melanie Herschel Lehrstuhl für Datenbanksysteme, Universität Tübingen Anfragen in Operativen Systemen und Data Warehouses Anfragen Operative Datenbank Transaktionale Anfragen Insert, Update, Delete, Select Anfragen über einzelne / wenige Tupel Anfrageoptimierung siehe VL Datenbanken II UPDATE Order SET amount = amount + 1 WHERE OrderID = 1 AND BookID = 04 Data Warehouse Analytische Anfragen Bulk-Insert und Select Typische Anfragetypen (drill down, slice, dice, ) Spezialisierte Optimierungsverfahren Jahr Books CDs s Region North America Asia Europe gruppe
2 Gegeben: ein Multidimensionales Datenmodell Beispiel eines multidimensionalen Datenmodells (Cube und Dimensionshierarchien) Datenwürfel (feinste Granularität) Dimensionshierarchien e Typen Kategorien Jahr Quartal Monat Stadt Mai 3 Ziel: Beantworten Analytische Anfragen Erinnerung: Das Data Warehouse integriert Daten, um eine globale Sicht über Geschäftsprozesse zu erlangen, die für Analysezwecke verwendet werden soll. Im Unterschied zu Anfragen auf klassichen relationalen Daten in operativen Systemen folgen analytische Anfragen oft gewissen Mustern. Man unterscheidet zwischen OLTP (Online Transaction Processing) Anfragen in operativen Datenbanken und OLAP (Online Analytical Processing) Anfragen in Data Warehouses. 4
3 Beispiele für OLAP Anfragen Navigation innerhalb eines Cubes z.b. Anzahl verkaufter bücher im Januar, unabhängig vom Navigation durch verschiedene Granularitätsebenen z.b. Verkaufszahlen pro typ (, Film, ) in einem Quartal pro Standort Navigation durch mehrere korrelierte Cubes z.b. Gesamtverkaufszahlen in Läden und im Internet, wobei wir zwei Cubes ( / / Stadt) und ( / / Kunde) haben. Rankinganfragen z.b. Die 10 beliebteste Bücher im Jahr 009 pro Land. In diesem ersten Teil von Kapitel 4 besprechen wir häufige Anfragemuster für OLAP Anfragen genauer. Kapitel 4.1 Typische Anfragen OLAP Operationen Innerhalb eines Cubes Über mehrere Cubes Pivot Sprachen für OLAP MDX SQL Erweiterungen 6
4 Annahmen In diesem Abschnitt nehmen wir an, dass das Data Warehouse Schema (= Schema der dispositiven Datenbasis) nur einen einzelnen Datenwürfel beinhaltet. Zur Einfachheit der Darstellung verwenden wir stets maximal drei Dimensionen. Die hier vorgestellten Konzepten gelten aber auch für Datenwürfel mit beliebig vielen Dimensionen. Zur Einfachheit der Darstellung verwenden wir eine Kennzahl pro Fakt. Im Allgemeinen können beliebig viele Kennzahlen pro Fakt existieren. 7 Überblick Besprochener Anfragemuster Alle in diesem Abschnitt besprochenen Anfragemuster dienen zur Navigation im multidimensionalen Datenmodell. Roll-up / Consolidate: Navigiere zu Daten gröberer Granularität Drill-down: Navigiere zu Daten feinerer Granularität Drill-out / Split: Expandiere Daten durch weitere Dimensionen Drill-in / Merge: Reduziere Dimensionalität der Daten Slice: Selektiere Daten basierend auf einer Einschränkung einer Dimension. Dice: Selektiere Daten basierend auf Einschränkungen mehrerer Dimensionen. 8
5 Roll-Up Definition Roll-Up (auch Consolidate) Gegeben sei ein n-dimensionaler Datenwürfel C = (DS, M) = ({D 1,, D n }, {M 1,, M p }) mit den Dimensionen entsprechenden Granularitäten G = {l1, l,,ln}, wobei li der Ebene des Schemas {D1,, Dm, TopD; "} der Dimension D i entspricht, 1! li! m+1. Während einer Roll-Up Operation (auch Consolidate genannt) wird für eine Menge DS up DS zu einer gröberen Granularität navigiert, d. h. es gilt Di DS up, Dj DS, i = j, i < m + 1: lj < li! m+1 Ein Roll-up entspricht also einem Hinauszoomen aus dem aktuellen Datenwürfel, was dazu führt, dass das Ergebnis einen geringeren Detailgrad hat, z.b. Rollup des Würfels (kategorie / Monat / Stadt) zu (typ / Monat / Stadt). Dieses Hinauszoomen geschieht entlang einer oder mehrerer Dimensionen, z.b. Roll-Up Beispiel oben oder Roll-up zu (typ / Quartal / Stadt). Es ist auch möglich, zur Wurzel TopD einer oder mehrerer Dimensionen zu navigieren. Geschieht dies entlang aller Dimensionen, beinhaltet das Ergebnis nur noch einen Fakt. und Di DS up, Dj DS, i = j: li = lj 9 Roll-Up Beispiel - Roll-Up einer Einzelnen Dimension Roll-Up einer einzelnen Dimension Roll-Up der -Dimension: (Kategorie / Monat / Stadt)! (Typ / Monat / Stadt) Mai (Typ) Medien Bücher Mai 10
6 Roll-Up Beispiel - Roll-up Mehrerer Dimensionen Roll-Up mehrerer Dimension Roll-Up der und der Jahr Dimension: (Kategorie / Monat / Stadt)! (Typ / Quartal / Stadt) Mai (Typ) Medien Bücher Q1 Q (Quartal) 11 Roll-Up Beispiel - Roll-up zur Wurzel aller Dimensionen Roll-Up zur Wurzel aller Dimensionen Roll-Up zur Wurzel aller Dimensionen: (Kategorie / Monat / Stadt)! (e / / ) Mai () () e () 1
7 Roll-Up Ableitung von Kennzahlen Wiederhohlung: Kennzahl gehört zu einem Fakt, dieser hat wiederum eine gewisse Granularität. Zwei Eigenschaften einer Kennzahl: Numerischer Wert Formel, mit der die Kennzahl aus anderen abgeleitet werden kann. Bei einem Roll-Up navigieren wir von einer feineren Granularität G1 der Fakten zu einer gröberen Granularität G der Fakten. Die Formel, die für Kennzahlen von Fakten der Granularität G definiert ist (falls vorhanden) wird angewandt, um den numerischen Wert abzuleiten. Dabei ist allerdings die Eigenschaft der Summierbarkeit (additiv, semi-additiv oder nicht additiv) der Kennzahlen zu beachten. Im Fall semi-additiver oder nicht-additiver Kennzahlen lassen sich ggf. Kennzahlen nur aus Basisdaten (Daten feinster Granularität in allen Dimensionen) ableiten. 13 Roll-Up Ableitung von Kennzahlen Leiten Sie die Kennzahlen des aus dem Roll-Up resultierenden Cubes ab (nur anhand sichtbarer Werte) Roll-Up der und der Jahr Dimension: (Kategorie / Monat / Stadt)! (Typ / Quartal / Stadt) Mai Juni (Typ) Medien Bücher Q1 Q (Quartal) 14
8 Drill-Down Drill-Down ist die inverse Operation zu Roll-Up. Ermöglicht Navigation von einem gröberen Detailgrad zu einem feineren Detailgrad (Hineinzoomen) entlang mindestens einer Dimension. Z.B. von (typ / Quartal / Stadt) zu (Kategorie / Monat / Stadt). Drill-Down Gegeben sei ein n-dimensionaler Datenwürfel C = (DS, M) = ({D 1,, D n }, {M 1,, M p }) mit den Dimensionen entsprechenden Granularitäten G = {l1, l,,ln}, wobei li der Ebene des Schemas {D1,, Dm, TopD;!} der Dimension D i entspricht, 1! li! m+1. Während einer Drill-Down Operation wird für eine Menge DS DOWN DS zu einer feineren Granularität navigiert, d. h. es gilt Di DS up, Dj DS, i = j: li < lj und Di DS up, Dj DS, i = j: li = lj 1 Drill-Down Beispiel - Drill-up Mehrerer Dimensionen Roll-Up mehrerer Dimension Medien Bücher (Typ) Q1 Q (Quartal) Drill-Down der und der Jahr Dimension: (Typ / Quartal / Stadt)! (Kategorie / Monat / Stadt) Mai 16
9 Zusammenfassung Roll-Up / Drill-Down Operatoren zur Navigation zwischen unterschiedlichen Granularitäten entlang einer oder mehrerer Dimensionen. Roll-Up: Weniger Detailgrad Drill-Down: Mehr Detailgrad Ermittlung der Kennzahlen (wenn Ergebniscube nicht materialisiert): Bei Roll-Up: mögliche Ableitung anhand der Detaildaten im Eingabecube. Bei Drill-Down: Ableitung aus Daten feinster (und materialisierter) Granularität In beiden Fällen bleibt die Dimensionalität des Datenwürfels unverändert, d.h. die Anwendung eines Roll-Up / Drill-Down auf einen n-dimensionalen Cube resultiert in einem n-dimensionalen Cube. Ausnahme: Navigation von oder zur Wurzel mindestens einer Dimension. 17 Drill-Out / Split Bei einem Drill-Out (auch Split genannt) wird ein n-dimensionaler Datenwürfel durch k weitere Dimension mit feinerer Granularität als TopD ergänzt, wobei k >= 1.! Ergebnis ist ein (n+k)-dimensionaler Datenwürfel Wie bei Drill-Down wird auch hier zu detaillierteren Daten navigiert. Im Gegensatz zu einem Drill-Down wird der Detailgrad nicht wie bisher durch eine feinere Granularität erhöht, sondern durch eine Anreicherung dimensionaler Information. 18
10 Drill-Out / Split Drill-Out des 1D-Würfels zum D-Würfel (Kategorie / Quartal) Drill-Out der -Dimension Q1 Q Q3 Q4 (Quartal) 19 Drill-In / Merge Inverse Operation zu Drill-Out. Bei einem Drill-In (auch Merge genannt) werdem einem n- dimensionalen Datenwürfel k Dimension entfernt, wobei k < n.! Ergebnis ist ein (n-k)-dimensionaler Datenwürfel Wie bei Roll-Up wird auch hier der Detailgrad reduziert. Im Gegensatz zu einem Roll-Up wird der Detailgrad nicht wie bisher durch eine gröbere Granularität reduziert, sondern durch ein Entfernen dimensionaler Information. 0
11 Drill-In / Merge Drill-In des D-Würfels (Kategorie / Quartal) zum 1D-Würfel Drill-In der -Dimension Q1 Q Q3 Q4 (Quartal) 1 Slice Realisiert eine Ausschnittsbildung gemäß den in einer Dimension vordefinierten Begriffswelten (gegeben durch das Dimensionsschema) Parameter des Slice-Operators ist ein Filterkriterium, das Punkt- oder Bereichsanfragen über eine Dimension beschreibt. Filterkriterium mit AND-, OR-, NOT-Konstruktionen. Z.B. Monat > AND Monat <= Nov. AND Monat <> Filterkriterium auf einer oder mehreren Hierarchieebenen der Dimension Z.B. Land = DE AND PLZ = Notation Slice(p, D): Selektiere nur die Scheiben entlang der Dimension D, die dem Filterkriterium p entsprechen.
12 Slice Slice mit einfachem Filterkriterium (Monat = ) Mai Slice(Monat =, ) Mai 3 Slice Slice mit einer Disjunktion als Filterkriterium (Monat = OR Monat = ) Mai Slice(Monat = OR Monat =, ) Mai 4
13 Slice Slice über die dimension, bestehend aus zwei Hierarchien (Kalender- & Bilanzjahr) Slice( Juli Kalenderjahr = 011 AND (Kalenderquartal = Q1 OR Kalenderquartal = Q), ) Bilanzjahr Bilanzquartal Monat Tag Juli Kalenderjahr Kalenderquartal Dice Anwendung von Slice-Operatoren entlang mehrerer Dimensionen. Z.B. Slice(Monat =, ) UND Slice(Stadt = Berlin, ) Bei Slice haben wir stets Scheiben des Würfels ausgeschnitten, da nur entlang einer Dimension gefiltert wurde. Mittels Dicing können nun beliebige Unterwürfel ausgeschnitten werden. 6
14 Dice Dice entlang zweier Dimensionen Mai Slice(Monat =, ) UND Slice(Stadt = Berlin OR Stadt = Stuttgart, ) Mai 7 Dice Dice entlang drei Dimensionen Juli Slice(Quartal = Q1 OR Quartal = Q, ) AND Slice(typ = Medien, ) AND Slice(Stadt = Berlin OR Stadt = Stuttgart) Juli 8
15 Kapitel 4.1 Typische Anfragen OLAP Operationen Innerhalb eines Cubes Über mehrere Cubes Pivot Sprachen für OLAP MDX SQL Erweiterungen 9 Korrelierte Datenwürfel Bisher haben wir stets einen Datenwürfel betrachtet. In einem Data Warehouse werden üblicherweise mehrere Datenwürfel gespeichert. Zum Beispiel Ein Würfel mit Dimensionen (,, ) zur Verwaltung von Verkaufszahlen nach, und Filiale. Ein Würfel mit Dimensionen (,, Onlinekunde) zur Verwaltung von Online-Verkaufszahlen von en an Kunden zu gegebener. Warum kein Würfel (,,, Kunde)? 30
16 Korrelierte Datenwürfel Korrelierte Datenwürfel teilen sich eine oder mehrere conformed dimensions. Conformed dimensions (übereinstimmende Dimensionen) Zwei Dimensionen D und D sind übereinstimmend wenn für ihre Wertebereiche dom(d) dom(d ) oder dom(d ) dom(d) gilt. Beispiel übereinstimmender und nicht übereinstimmender Dimensionen conformed e e Bücher Medien Bücher Medien Bücher e Medien Roman Roman not conformed e e Bücher Medien Bücher Medien Roman Wissenschaft Roman 31 Korrelierte Datenwürfel Korrelierte Datenwürfel Zwei Datenwürfel sind DC = (DS, M) und DC = (DS, M ) korreliert, wenn mindestens ein Dimensionspaar (Di, Dj), wobei Di DS, Dj DS übereinstimmt. Sei CD die Menge aller Dimensionspaare {(Di, Dj) Di DS, Dj DS, Di übereinstimmend mit Dj}. Beispiel zweier korrelierter Datenwürfel mit CD = {(, ), (, )} Lager Mai Mai 3
17 Drill-Across Der Drill-Across Operator wird über mehrere korrelierte Datenwürfel angewandt. Er dient dazu, Kennwerte der Fakten der korrelierten Würfen zu kombinieren um eine globalere Analyse (über mehrere Würfel hinweg) durchzuführen. Die Kennzahlen müssen sinnvoll kombiniert werden! Z.B. kann das bestverkaufte über Filialhandel und Onlinehandel hinweg dadurch bestimmt werden, indem die Kennzahlen (jeweils Verkaufszahl) der Cubes (,, ) und (,, Onlinekunde) summiert werden. Der von einem Drill-Across zweier Würfel DC = (DS, M) und DC = (DS, M ) zurürckgegebene Datenwürfel besteht aus Der Menge der Dimensionen {gröbste(di, Dj) (Di, Dj) CD } (siehe Folie 3 für die Definition von CD) Der Menge der Kennzahlen M M bzw. daraus abgeleiteter Kennzahlen 33 Drill-Across Drill Across Beispiel 1: Gesamtverkauf (Filial- + Onlineverkauf) von en nach Mai Mai Berlin Stuttgart Kunde Gold Platin Neu Standard Silber Mai Ableitung der Kennzahlen: verkaufszahl(m,k) = "s i Stadt verkaufszahl(m,k,si) + "k i Kunde verkaufszahl(m,k,ki) 34
18 Drill-Across Drill-Across Bsp. : Bei welchen en liegt der Lagerbestand stets über 60% der Anzahl verkaufter e? Verkaufszahlen Stuttgart Berlin ril Ma i Ap Ja n. Fe b. Mä rz Lagerbestände Lager Stuttgart Berlin Ja n. Fe b. Mä rz Ap ril Ma i 3 Kapitel 4.1 Typische Anfragen OLAP Operationen Innerhalb eines Cubes Über mehrere Cubes Pivot Sprachen für OLAP MDX SQL Erweiterungen 36
19 Pivot Bei einem Pivot (auch Rotation) wird konzeptuell der Datenwürfel um eine Achse gedreht. Dieser Operator wird hauptsächlich für anschauliche Navigation bzw. zur ReportGenerierung (Menge von D-Spreadsheets verwendet). Dieses Pivoting ist eigentlich Aufgabe der Präsentationssoftware. Pivot des Würfels (,, ) in (,, ) n Be rl utt St ril Ma i rz Ap Mä n. Ja Fe b. in Stuttgart Berlin Ly o rt ris Pa ga 37 Kapitel 4.1 Typische Anfragen OLAP Operationen Innerhalb eines Cubes Über mehrere Cubes Pivot Sprachen für OLAP MDX SQL Erweiterungen 38
20 OLAP Operationen Die bisher besprochenen OLAP Operationen arbeiten auf Würfeln Navigation entlang der Dimensionshierarchie: Roll-Up, Drill-Down Erweiterung / Reduktion der Dimensionalität: Split / Merge Selektion: Slice, Dice Kombination von Daten mehrerer Würfel: Drill-Across Weitere analytische Anfragen, die zu OLAP Operationen gezählt werden Gleitende Durchschnitte Arbeiten auf reihen Relative Wertevergleiche 39 Sprachen für OLAP Operationen Allgemein Bereitstellung der notwendigen Operationen Deklarative Ansätze Kein vielfach geschachteltes SQL, weniger verbos als Standard SQL Im Wesentlichen zwei Ansätze Multidimensional Expressions (MDX): Baut auf dem multidimensionalen Datenmodell (MDDM) auf (Würfel, Dimensionen, Fakten, ) Erweiterungen von SQL: Anfragen über relationales Star- / Snowflake-Schema 40
21 MDX MDX = Multidimensional Expressions: Microsoft s Vorschlag OLE DB for OLAP Eigene Anfragesprache Standard ohne feste Semantik (by example) MDDM Konzepte als First-Class Elemente Dadurch kompaktere Anfragen als mit SQL SQL-artige Syntax (aber nicht identische Semantik) Sehr mächtig und komplex Erzeugung der Objekte (DDL) erfolgt anderweitig: DSO Interface (Decision Support Objects) von SQL Server Wird von vielen kommerziellen Tools zur Kommunikation mit OLAP Datenbank benutzt. nach [Ulf Leser, VL Data Warehouses und Data Mining, SS 007] 41 MDX Grundprinzip und Struktur Eine MDX Anfrage erzeugt einen mehrdimensionalen Report Z.B. ein D Spreadsheet Z.B. Mehrere Tabs mit D Spreadsheets zur Darstellung von 3 Dimensionen Grundstruktur ist wie bei SQL eine SELECT-FROM-WHERE Klausel Aber andere Semantik als bei SQL! Allgemeine MDX Grundstruktur SELECT <axis-spec1>, <axis-spec>, FROM <cube-spec1>, <cube-spec>, WHERE ( <selection-specification> ) 4
22 MDX Grundprinzip und Struktur Einfaches MDX Beispiel (Beispielcube & Dimensionen siehe Folie 3) SELECT { Berlin, Stuttgart } ON ROWS FROM WHERE { [1. Quartal], [. Quartal].CHILDREN } ON COLUMNS VerkaufsWürfel ( Measures.Verkauf, ).[010], e.e Aggregation der Kennzahl (measure) Verkauf über vordefinierte Funktion (z.b. SUM) Einschränkung der - Dimension (nur raum 010) Selektion relevanter e. Hier alle, da TopD Ebene gewählt Berlin Stuttgart 1. Quartal Mai 010 Juni 010 numerische Zellenwerte 43 MDX Klammern und SELECT Klammern in MDX {} - Menge von Elementen für die Erzeugung einer Ergebnisdimension [] - Repräsentation von Leer- und Sonderzeichen & nicht numerische Interpretation von Zahlen. () - Liefert Tupel für die WHERE-Klausel SELECT - Achsendimensionen Beschreibung des Ergebnisraum Jeder Dimension der Ergebnisses wird präsentationsgerecht eine Rolle zugewiesen ON COLUMNS, ON ROWS, ON PAGES, ON SECTIONS, ON CHAPTERS Eine Dimension im Ergebnis entspricht einer (Auswahl einer) Dimension im MDDM über ein oder mehrere Hierarchieebenen. {Berlin, Stuttgart} aus -Dimension und Stadt-Ebene {[1. Quartal], [. Quartal].CHILDREN} aus -Dimension, Quartal- und Monat-Ebene 44
23 MDX FROM und WHERE FROM - Würfelspezifikation Menge von Datenwürfeln, die zur Konstruktion des Ergebniswürfels notwendig sind. Falls mehr als ein Würfel referenziert wird, wird implizit ein multidimensionaler Verbund durchgeführt, wobei jeweils zwei Datenwürfel mindestens eine gemeinsame Dimension aufweisen müssen (siehe auch korrelierte Datenwürfel) WHERE - Restriktion Einschränkung der in der FROM-Klausel spezifizierten Datenwürfel Einschränkung durch Angabe einer Liste von Klassifikationsknoten aus so genannten Slicer-Dimensionen. Kennzahlen sind normale Elemente der speziellen Measures-Dimension (diese kann in der WHERE-Klausel, aber auch in FROM-Klausel verwendet werden) 4 MDX Mengenausdrücke Aufzählung von Knoten der dimensionalen Hierarchie Einzelne Knoten müssen nicht aus der gleichen Ebene stammen Z.B. liefert {,, Medien} eine Mischung aus Kategorien und Typen der -Dimension. Elementausdrücke zur Erzeugung von Mengen von Knoten CHILDREN: Kindknoten eines Klassifikationsknoten z.b. [. Quartal].CHILDREN = {, Mai, Juni} MEMBERS: Knoten einer Klassifikationsstufe z.b..quartal.members = {[1. Quartal],, [4. Quartal]} PARENT: Vaterknoten eines Klassifikationsknoten z.b..parent = {Bücher} 46
24 MDX Mengenausdrücke Schachtelung von Mengen mittels CROSSJOIN Projektion zweier Dimensionen in eine Semantik: Alle möglichen Kombinationen (Kreuzprodukt) CROSSJOIN Beispiel SELECT CROSSJOIN({Berlin, Stuttgart} {Kiosk, [Mega-Store]} ON ROWS FROM { 010.CHILDREN } ON COLUMNS VerkaufsWürfel WHERE ( Measures.Verkauf,.[010], e.medien ) Berlin Kiosk Mega-Store Stuttgart Kiosk Mega-Store 1. Quartal 010. Quartal Quartal Quartal 010 numerische Zellenwerte (Anzahl Verkäufe von en von Typ Medien im raum MDX Mengenausdrücke Relative Auswahl zur Nutzung einer Ordnung innerhalb dimensionaler Strukturen. LASTCHILD - letzte Kind eines Knotens z.b. Bücher.LASTCHILD = {} NEXTMEMBER - nächster Nachbar auf gleicher Ebene z.b. [1. Quartal 010].NEXTMEMBER = {[. Quartal 010]} LEAD(x) - Nachbar in positiver Entfernung x auf gleicher Ebene z.b. [November 010].LEAD() = {[Januar 011]} [x]:[y] - Bereichseinschränkung zwischen x und y z.b. [199]:[00] beschränkt den zu betrachtenden raum auf die Jahre 199 bis
25 MDX Mengenausdrücke Methoden für dimensionale Schemata zur Nutzung einer Ordnung innerhalb dimensionaler Strukturen. LEVEL - Ermittlung der Schemaebene z.b..level = {Kategorien}, Medien.LEVEL = {Typen} LEVELS(x) - Nutzung der internen Nummerierung der Klassifikationsstufen zum Zugriff auf Schemaebene x z.b. LEVELS(1) = {Jahr} 49 Konditionierte Ergebnisproduktion Konstruktion des Ergebniswürfels in Abhängigkeit von berechneten Ergebnissen. Top-k Anfragen TOPCOUNT TOPRECENT TOPSUM Allgemeine Filter-Bedingungen FILTER 0
26 Konditionierte Ergebnisproduktion Beispiel der TOPCOUNT Funktion Ermittlung des Umsatzes der fünf verkaufsstärksten Bundesländer in Deutschland in 010 (Annahme: Hierachie Land-Bundesland-Stadt) SELECT {Measures.Umsatz} ON COLUMNS {TOPCOUNT(Deutschland.CHILDREN,, Measures.Verkauf)} ON ROWS FROM WHERE VerkaufsWürfel ( Measures.Umsatz,[010]) Beispiel der Filter Funktion Zeige Verkaufszahlen für Bundesländer an, deren Umsatz im Jahr 00 höher als im Jahr 001 war. Hier bezieht sich der Umsatz auf den Umsatz pro Quartal in der kategorie Medien. SELECT FILTER(Deutschland.CHILDREN, ([00], Umsatz) > ([001], Umsatz) ) ON COLUMNS Quartal.MEMBERS ON ROWS FROM VerkaufsWürfel WHERE ( Verkauf,[00], e.medien ) 1 Temporale Auswertung Addressierung von punkten und - orten PERIODSTODATE(k, d) Alle Knoten vom Beginn der Klasse k bis zum Datum d z.b. PERIODSTODATE(Quartal, [1. November 00] = LASTPERIODS(k, d) Letzte k abschnitte vor Datum d (k und d auf gleicher Hierarchieebene). z.b. LASTPERIODS(3, [Sept. 00]) = {[Juni 00], [Juli 00], [Aug. 00]} PARALLELPERIOD(k, n, d) z.b. PARALLELPERIOD(Jahre, 3, [Sept. 00]) = {[Sept. 1999]}
27 Temporale Auswertung Auswertung Kovarianz Korrelation gleitender Durchschnitt 3 MDX Fazit Hohe Komplexität Mächtige Sprache Direkte Anlehnung an MDDM Weit verbreitet Schnittstelle zwischen OLAP GUI und DB-Server Unterstützt von Microsoft, Cognos (IBM), BusinessObject (SAP), 4
28 Kapitel 4.1 Typische Anfragen OLAP Operationen Innerhalb eines Cubes Über mehrere Cubes Pivot Sprachen für OLAP MDX SQL Erweiterungen SQL und OLAP Übersetzung eines MDDM in Star- oder Snowflake Schema Operationen mit Standard SQL (SQL-9) Auswahl (slice, dice): Joins und Selects Verfeinerung (drill-down): Joins uns Selects Aggregation um eine Stufe: Group-By OLAP-Erweiterungen von SQL Mehrfachgruppierungen! in dieser Vorlesung Analytische Funktionen! in der Übung Prinzipiell auch in SQL-9 möglich, aber nur kompliziert auszudrücken und ineffizient in der Bearbeitung 6
29 Beispiel Beispiel eines Star Schemas PID Kategorie Typ 1 Bücher Bücher 3 Bücher 4 Medien Medien 6 Medien ZID Monat Quartal Jahr 1 Jan10 Q Feb10 Q OID Stadt 1 Berlin Stuttgart 3 4 Faktentabelle PID ZID OID #Verkäufe Gewinn Mai Kennzahlen (Verkäufe & Gewinn) für im Januar 010 in Stuttgart. Alle weiteren Kombinationen von kategorien und en im Januar Beginn der Kombinationen für Februar 010(danach auch für alle weiteren Monate) 7 Mehrfachgruppierungen Erinnerung zu GROUP BY (siehe VL Datenbanken I) GROUP BY <att1>, <att>,, <attn> partitioniert die von der Anfrage betrachteten Daten anhand der Werte in Attributen att1 bis attn. Wird GROUP BY verwendet, können in der SELECT-Klausel (i) die Attribute att1 bis attn vorkommen plus (ii) aggregierte Werte anderer Attribute. Aggregation mittels SUM, COUNT, AVG, MIN, MAX Beispiel einer GROUP-BY Anfrage - Gesamtgewinn mit Büchern nach Jahr, Quartal und Monat? SELECT Jahr, Quartal, Monat, SUM(Gewinn) FROM Faktentabelle,, WHERE.PID = Faktentabelle.PID AND.ZID = Faktentabelle.ZID AND.Typ = Bücher GROUP BY Jahr, Quartal, Monat Summe nur für Tage (unterteilt nach Monaten / Jahren) Keine Summe pro Monat / pro Jahr 8
30 Mehrfachgruppierungen Beispiel einer GROUP-BY Anfrage - Gesamtgewinn mit Büchern nach Jahr, Quartal und Monat SELECT Monat AS Time, SUM(Gewinn) AS Gewinn FROM Faktentabelle,, WHERE.PID = Faktentabelle.PID AND.ZID = Faktentabelle.ZID AND.Typ = Bücher GROUP BY Monat UNION SELECT Quartal AS Time, SUM(Gewinn) AS Gewinn FROM Faktentabelle,, WHERE.PID = Faktentabelle.PID AND.ZID = Faktentabelle.ZID AND.Typ = Bücher GROUP BY Quartal UNION SELECT Jahr AS Time, SUM(Gewinn) AS Gewinn FROM Faktentabelle,, WHERE.PID = Faktentabelle.PID AND.ZID = Faktentabelle.ZID AND.Typ = Bücher GROUP BY Jahr Monate Quartale Jahre Time Gewinn Dec Q Q Mehrfachgruppierungen Gewünschtes Ergebnis - Gesamtgewinn mit Büchern nach Jahr, Quartal und Monat Jahr Quartal Monat Gewinn 010 Q Q Q Q Q Q Nutzung einer Dimensionshierarchie in SQL? Mehrfachgruppierung : Gewinn pro Quartal und typ und Quartal und in 010 Quartal Typ Gewinn Q1 010 Bücher - 0 Bücher - Q4 010 Bücher - 70 Q1 010 Medien - 40 Medien - Q4 010 Medien - 60 Q Berlin 60 - Berlin Q Berlin 0 Q Stuttgart 0 - Aggregation entlang mehrerer Dimensionskombinationen in SQL? 60
31 Mehrfachgruppierungen SQL Erweiterung zur Unterstützung von Mehrfachgruppierungen GROUPING SETS - Gruppierungsmengen Explizite Angabe einer Menge von Gruppierungskombinationen CUBE - Multidimensionale Gruppierung Generierung aller Gruppierungskombinationen der als Parameter übergebene Attribute ROLLUP - Hierarchische Multidimensionale Gruppierung Kombination dieser Klauseln mit bekannten SQL-Klauseln (GROUP BY, HAVING, CASE, ) 61 Mehrfachgruppierungen Gruppierungsmengen Grouping Sets GROUP BY GROUPING SETS ((<set1_a1>,, <set1_am>), (<set_a1>,, <set_an>), ) Explizite Angabe der gewünschten Gruppierungen Jede Gruppierungsmenge (<seti_a1>, ) gibt eine gewünschte Gruppe an Äquivalent zu UNION einzelner GROUP BY mit Auffüllen der Werte nicht überlappender Attribute der einzelnen Gruppierungsmengen mit NULL. Abfragen der gruppierenden Spalten mittels GROUPING() Funktion: GROUPING(<attr>) = 0 wenn nach <attr> gruppiert, sonst 1. 6
32 Mehrfachgruppierungen Gruppierungsmengen Mehrfachgruppierung : Gewinn pro Quartal und typ und Quartal und in 010 Quartal Typ Gewinn Q1 010 Bücher - 0 Bücher - Q4 010 Bücher - 70 Q1 010 Medien - 40 Medien - Q4 010 Medien - 60 Q Berlin 60 - Berlin Q Berlin 0 Q Stuttgart 0 - Mehrfachgruppierung in SQL unter Verwendung von Gruppierungsmengen SELECT Quartal, Typ,, SUM(Gewinn)AS GEWINN FROM Faktentabelle FT,, WHERE.PID = FT.PID AND.ZID = FT.ZID AND.Jahr = 010 GROUP BY GROUPING SETS ( (Quartal, Typ), (Quartal, ) ) 63 Mehrfachgruppierungen Gruppierungsmengen Mehrfachgruppierung mit Ausgabe der entsprechenden Gruppen Quartal Typ Gewinn GQ GT GO Q1 010 Bücher Q Berlin Berlin Mehrfachgruppierung mit Ausgabe der entsprechenden Gruppen in SQL SELECT Quartal, Typ,, SUM(Gewinn) AS GEWINN GROUPING(Quartal) AS GQ, GROUPING(Typ) AS GT, GROUPING() AS GO FROM WHERE GROUP BY GROUPING SETS ((Quartal, Typ), (Quartal, )) 64
33 Mehrfachgruppierungen Gruppierungsmengen Gruppierungssemantik bei Gruppierungsmengen GROUP BY A, B GROUP BY GROUPING SETS ((A, B))! Gruppe (A, B) GROUP BY GROUPING SETS (A, B), (A, C), (A)) GROUP BY A, GROUPING SETS ((B), (C), ( ))! Gruppen (A) " ( (B), (C), ( )) = (A, B), (A, C), (A) GROUP BY GROUPING SETS ((A, B), (B, C)), GROUPING SETS ((D, E), (D), ())! Gruppen ( (A, B), (B, C) ) " ( (D, E), (D), ( ) ) = (A, B, D, E), (A, B, D), (A, B), (B, C, D, E), (B, C, D), (B, C) 6 Mehrfachgruppierungen Gruppierungsmengen Formulieren Sie eine SQL Anfrage, die das unten dargestellte Ergebnis berechnet Typ Jahr Stadt #Verkäufe Buch Buch 010 Berlin 30 Buch 010 Stuttgart 0 Medien Medien 010 Berlin 30 Medien 010 Stuttgart Berlin Stuttgart 30 66
34 Mehrfachgruppierungen Multidimensionale Gruppierung Multidimensionale Gruppierung mittels CUBE() GROUP BY CUBE (<a1>,, <an>) Bildet alle Gruppierungskombinationen der als Parameter übergebenen Attribute Z.B. bildet CUBE(A, B, C) Gruppen (A, B, C), (A, B), (A, C), (B, C), (A), (B), (C), ( )) Insgesamt n Gruppen In Kombination mit Aggregation wird CUBE() zur Berechnung der Summen sämtlicher Kombinationen genutzt. 67 Mehrfachgruppierungen Multidimensionale Gruppierung Gewinn nach (jeder Kombination von)quartal, typ und in 010 Quartal Typ Gewinn Q1 010 Bücher Berlin 10 Q1 010 Bücher Stuttgart 0 Q1 010 Bücher Q Berlin 80 Q Stuttgart Bücher Berlin 0 - Bücher Stuttgart 80 - Q Bücher Medien Berlin Stuttgart Mehrfachgruppierung in SQL unter Verwendung von Gruppierungsmengen SELECT Quartal, Typ,, SUM(Gewinn)AS GEWINN FROM Faktentabelle FT,, WHERE.PID = FT.PID AND.ZID = FT.ZID AND.Jahr = 010 GROUP BY CUBE (Quartal, Typ, ) 68
35 Mehrfachgruppierungen Multidimensionale Gruppierung Gruppierungssemantik beim CUBE-Operator GROUP BY CUBE(A, B, C) GROUP BY GROUPING SETS ((A,B,C), (A,B), (A,C), (B,C), (A), (B), (C), ()) GROUP BY CUBE(A, B), CUBE(B, C)! Gruppen ( (A, B), (A), (B), ( ) ) " ( (B, C), (B), (C), ( )) = ( A, B, B, C ), (A, B, B), (A, B, C), (A, B), (A, B, C), (A, B), (A, C), (A), (B, B, C), (B, B), (B, C), (B), (B, C), (B), (C), ( ) = (A, B, C), (A, B), (A, B, C), (A, B), (A, B, C), (A, B), (A, C), (A), (B, C), (B), (B, C), (B), (B, C), (B), (C), ( ) GROUP BY GROUPING SETS(CUBE(A, B), CUBE(B,C)) GROUP BY GROUPING SETS ((A,B), (A), (B), (), (B,C), (B), (C), ()) Duplikate in Kombinationen (z.b. (A, B, C), (A, B), (B), ) werden nicht eliminiert! 69 Mehrfachgruppierungen Multidimensionale Gruppierung Formulierung einer SQL Anfrage mit dem CUBE-Operator Geben Sie eine SQL Anfrage an, die die Anzahl -Verkäufe im ersten Quartal 010 aggregiert nach Monat und ausgibt. Das Ergebnis der Anfrage entspricht demnach den Daten, die das unten gezeigte Spreadsheet veranschaulicht. Berlin Stuttgart Summe Summe
36 Mehrfachgruppierungen Hierarchische Multidimensionale Gruppierung Multidimensionale Gruppierung mittels ROLLUP() GROUP BY ROLLUP (<a1>,, <an>) In herkömmlichem SQL kann man UNION über k Subanfragen formulieren, um hierarchische Gruppierung füe k Dimensionsstufen zu erhalten (siehe z.b. Folie 9). Aufwändig zu formulieren, zu berechnen (k Scans der Faktentabelle) und ungünstige Reihenfolge für Reports (und nur schwer zu sortieren). ROLLUP berechnet hierarchische Aggregation in günstiger Reihenfolge. Attribute <a1>,, <an> stammen aus einer Dimensionshierarchie und werden in absteigender Granularität angegeben. 71 Mehrfachgruppierungen Hierarchische Multidimensionale Gruppierung Gesamtgewinn mit Büchern nach Jahr, Quartal und Monat Jahr Quartal Monat Gewinn 010 Q Q Q Q Q Q SQL Anfrage mit ROLLUP SELECT Jahr, Quartal, Monat, SUM(Gewinn)AS GEWINN FROM Faktentabelle FT,, WHERE.PID = FT.PID AND.ZID = FT.ZID AND.Typ = Bücher GROUP BY ROLLUP (Jahr, Quartal, Monat) 7
37 Mehrfachgruppierungen Hierarchische Multidimensionale Gruppierung Gruppierungssemantik beim CUBE-Operator GROUP BY ROLLUP(A1, A,, An) GROUP BY GROUPING SETS ( (A1,, An-1, An), (A1,, An-1),, (A1, A), (A1), () ) wobei die funktionalen Abhängigkeiten An " An-1 " " A " A1 gelten GROUP BY ROLLUP(A1,, An), ROLLUP(B1,, Bm)! Gruppen ( (A1,, An),, (A1, A), (A1), ( ) ) " ( (B1,, Bn),, (B1, B), (B1), ( ) ) 73 Mehrfachgruppierungen Hierarchische Multidimensionale Gruppierung Formulierung einer SQL Anfrage mit hierarchischer multidimensionaler Gruppierung Geben Sie eine SQL Anfrage an, die die Anzahl Von Verkäufen von Medien-en nach Jahr, Monat, Kategorie und Stadt wie in der rechten Beispieltabelle aufschlüsselt. Verwenden Sie dabei keine GROUPING SETS Klausel. Jahr Monat Kategorie Stadt Verkauf 010 Dez Dez Dez Dez Dez Berlin Stuttgart Berlin Berlin Stuttgart
38 Zusammenfassung OLAP-Operationen Navigation entlang der Dimensionshierarchie: Roll-Up, Drill-Down Erweiterung / Reduktion der Dimensionalität: Split / Merge Selektion: Slice, Dice Kombination von Daten mehrerer Würfel: Drill-Across OLAP-Sprachen MDX - Orientiert an MDDM und Spreadsheets SQL Erweiterungen: GROUPING SETS, CUBE, ROLLUP 7
Data Cube. Aggregation in SQL. Beispiel: Autoverkäufe. On-line Analytical Processing (OLAP) 1. Einführung. 2. Aggregation in SQL, GROUP BY
Data Cube On-line Analytical Processing (OLAP). Einführung Ziel: Auffinden interessanter Muster in großen Datenmengen 2. Aggregation in SQL, GROUP BY 3. Probleme mit GROUP BY 4. Der Cube-Operator! Formulierung
MehrAufgabe 1: [Logische Modellierung]
Aufgabe 1: [Logische Modellierung] a) Entwerfen Sie für das von Ihnen entworfene Modell aus Aufgabe 2 des 1. Übungsblattes ein Star-Schema. b) Entwerfen Sie für das vorangegangene Modell einen Teil eines
MehrAnfragen an multidimensionale Daten
Anfragen an multidimensionale Daten Alexander Heidrich - BID8 09.06.2005 Hintergrundbild: http://www.csc.calpoly.edu/~zwood/teaching/csc471/finalproj02/afternoon/mfouquet/cube.jpg Inhaltsübersicht Motivation
MehrDatenbanksysteme 2 Frühjahr-/Sommersemester 2014 28. Mai 2014
Lehrstuhl für Praktische Informatik III Prof. Dr. Guido Moerkotte Email: moer@db.informatik.uni-mannheim.de Marius Eich Email: marius.eich@uni-mannheim.de Datenbanksysteme 2 8. Übungsblatt Frühjahr-/Sommersemester
MehrData Warehouses. Data Warehouse Architektur ... Sommersemester 2011. Melanie Herschel melanie.herschel@uni-tuebingen.de
Data Warehouses Sommersemester 2011 Melanie Herschel melanie.herschel@uni-tuebingen.de Lehrstuhl für Datenbanksysteme, Universität Tübingen Data Warehouse Architektur Data-Warehouse-System Teilsichten
MehrSQL SQL. SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R. Grundlagen der Datenbanksysteme I
SQL SQL = Structured Query Language (SEQUEL) IBM San Jose Research Laboratory SYSTEM R VII-1 Beispielrelationen Filiale ( Name Leiter Stadt Einlagen ) Konto ( KontoNr KundenNr FilialName Saldo ) Kredit
MehrUniversität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5
Universität Augsburg, Institut für Informatik WS 2006/2007 Dr. W.-T. Balke 27. Nov. 2006 M. Endres, A. Huhn, T. Preisinger Lösungsblatt 5 Aufgabe 1: Projektion Datenbanksysteme I π A1,...,A n (π B1,...,B
MehrMengenvergleiche: Alle Konten außer das, mit dem größten Saldo.
Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten
Mehrmit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007
6. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 Aufgabe 1: Rekursion Betrachten Sie die folgende Tabelle
MehrTU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 7 Übung zur Vorlesung Grundlagen: Datenbanken im WS13/14 Henrik Mühe (muehe@in.tum.de) http://www-db.in.tum.de/teaching/ws1314/dbsys/exercises/
MehrSuche schlecht beschriftete Bilder mit Eigenen Abfragen
Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen
MehrInformatik 12 Datenbanken SQL-Einführung
Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung
MehrVorlesung Datenbankmanagementsysteme
Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse & Einführung Online Analytical Processing (OLAP) (auf Basis von Oracle) Vorlesung Datenbankmanagementsysteme SQL zur Datenanalyse M. Lange, S.
MehrDas Multidimensionale Datenmodell
Das Multidimensionale Datenmodell Konzeptuelle Modellierung Umsetzung des Modells Beispiel ER-Modell 2 / 36 Probleme ER-Modellierung Keine Unterscheidung Klassifikation, Attribute, Kenngrößen Dimension
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
MehrUmsatz-Kosten-Treiber-Matrix. 2015 Woodmark Consulting AG
Umsatz-Kosten-Treiber-Matrix Die Alpha GmbH ist ein Beratungsunternehmen mit 43 Mitarbeitern. Der Umsatz wird zu 75% aus IT-Beratung bei Kunden vor Ort und vom Betrieb von IT-Applikationen erwirtschaftet.
Mehr7. Übung - Datenbanken
7. Übung - Datenbanken Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: DBS a Was ist die Kernaufgabe von Datenbanksystemen? b Beschreiben Sie kurz die Abstraktionsebenen
Mehr1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:
Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:
MehrDie bisher bereits bekannten Aggregatsfunktionen MIN, MAX, SUM, AVG, COUNT, VARIANCE und STDDEV wurden um FIRST und LAST erweitert.
Betrifft Autor FIRST, LAST Markus Jägle (markus.jaegle@trivadis.com) Art der Info Technische Background Info (April 2002) Quelle Aus dem NF9i-Kurs, NF9i-Techno-Circle der Trivadis und Oracle9i Data Warehousing
Mehr5.2 Neue Projekte erstellen
5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort
MehrErstellen von x-y-diagrammen in OpenOffice.calc
Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei
Mehrpro4controlling - Whitepaper [DEU] Whitepaper zur CfMD-Lösung pro4controlling Seite 1 von 9
Whitepaper zur CfMD-Lösung pro4controlling Seite 1 von 9 1 Allgemeine Beschreibung "Was war geplant, wo stehen Sie jetzt und wie könnte es noch werden?" Das sind die typischen Fragen, mit denen viele Unternehmer
Mehr1 Mathematische Grundlagen
Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.
MehrMai 2006. Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln
Hauptseminar: Nichtrelationale Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln Mai 2006 Was ist eine Datenbank? Erweiterung relationaler um eine Deduktionskomponente Diese
MehrBerechnungen in Access Teil I
in Access Teil I Viele Daten müssen in eine Datenbank nicht eingetragen werden, weil sie sich aus anderen Daten berechnen lassen. Zum Beispiel lässt sich die Mehrwertsteuer oder der Bruttopreis in einer
MehrLogische Modelle für OLAP. Burkhard Schäfer
Logische Modelle für OLAP Burkhard Schäfer Übersicht Einführung in OLAP Multidimensionale Daten: Hypercubes Operationen Formale Grundlagen Zusammenfassung Einführung in OLAP Verfahren zur Analyse großer
MehrProgrammiersprachen und Übersetzer
Programmiersprachen und Übersetzer Sommersemester 2010 19. April 2010 Theoretische Grundlagen Problem Wie kann man eine unendliche Menge von (syntaktisch) korrekten Programmen definieren? Lösung Wie auch
MehrKapitel 4 Die Datenbank Kuchenbestellung Seite 1
Kapitel 4 Die Datenbank Kuchenbestellung Seite 1 4 Die Datenbank Kuchenbestellung In diesem Kapitel werde ich die Theorie aus Kapitel 2 Die Datenbank Buchausleihe an Hand einer weiteren Datenbank Kuchenbestellung
MehrAuswahlabfragen mit ACCESS
Auswahlabfragen mit ACCESS Abfragekriterien und Operatoren Beim Entwerfen von ACCESS-Auswahlabfragen (queries) sind definierte Abfragekriterien bzw. Operatoren zu benutzen. Ein Abfragekriterium ist eine
MehrWürfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.
040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl
MehrDatenbanken Microsoft Access 2010
Datenbanken Microsoft Access 2010 Abfragen Mithilfe von Abfragen kann ich bestimmte Informationen aus einer/mehrerer Tabellen auswählen und nur diese anzeigen lassen die Daten einer/mehrerer Tabellen sortieren
MehrDas SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik
Beispielaufgaben Informationssysteme erstellt von Fabian Rump zur IS Vorlesung 2009/10 1 Multiple Choice Aussage richtig falsch Eine SQL-Abfrage beginnt immer mit dem Schlüsselwort SELECT Eine Datenbank
MehrOLAP und der MS SQL Server
OLAP und der MS SQL Server OLAP und der MS SQL Server OLAP-Systeme werden wie umfangreiche Berichtssysteme heute nicht mehr von Grund auf neu entwickelt. Stattdessen konzentriert man sich auf die individuellen
MehrMusterlösungen zur Linearen Algebra II Blatt 5
Musterlösungen zur Linearen Algebra II Blatt 5 Aufgabe. Man betrachte die Matrix A := über dem Körper R und über dem Körper F und bestimme jeweils die Jordan- Normalform. Beweis. Das charakteristische
MehrCayuga. A General Purpose Event Monotoring System. David Pfeiffer. 19. Juli 2007
Cayuga A General Purpose Event Monotoring System David Pfeiffer 19. Juli 2007 1 / 24 Themen 1 2 Aufbau Operatoren 3 Das Modell der Zustandsübergang Zustandstypen 4 Beispiel Kritik & Fragen 2 / 24 Was ist
MehrDatenbanken Kapitel 2
Datenbanken Kapitel 2 1 Eine existierende Datenbank öffnen Eine Datenbank, die mit Microsoft Access erschaffen wurde, kann mit dem gleichen Programm auch wieder geladen werden: Die einfachste Methode ist,
MehrKapitalerhöhung - Verbuchung
Kapitalerhöhung - Verbuchung Beschreibung Eine Kapitalerhöhung ist eine Erhöhung des Aktienkapitals einer Aktiengesellschaft durch Emission von en Aktien. Es gibt unterschiedliche Formen von Kapitalerhöhung.
Mehr6. Sichten, Integrität und Zugriffskontrolle. Vorlesung "Informa=onssysteme" Sommersemester 2015
6. Sichten, Integrität und Zugriffskontrolle Vorlesung "Informa=onssysteme" Sommersemester 2015 Überblick Sichten Integritätsbedingungen Zugriffsrechte SQL- Schema und SQL- Katalog Das Informa=onsschema
MehrZeichen bei Zahlen entschlüsseln
Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren
MehrKapiteltests zum Leitprogramm Binäre Suchbäume
Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm
MehrAccess [basics] Gruppierungen in Abfragen. Beispieldatenbank. Abfragen gruppieren. Artikel pro Kategorie zählen
Abfragen lassen sich längst nicht nur dazu benutzen, die gewünschten Felder oder Datensätze einer oder mehrerer Tabellen darzustellen. Sie können Daten auch nach bestimmten Kriterien zu Gruppen zusammenfassen
MehrBusiness Intelligence Praktikum 1
Hochschule Darmstadt Business Intelligence SS 2014 Fachbereich Informatik Praktikumsversuch 1 Prof. Dr. C. Wentzel Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 07.05.2014 Business Intelligence Praktikum
Mehr6.2 Scan-Konvertierung (Scan Conversion)
6.2 Scan-Konvertierung (Scan Conversion) Scan-Konvertierung ist die Rasterung von einfachen Objekten (Geraden, Kreisen, Kurven). Als Ausgabemedium dient meist der Bildschirm, der aus einem Pixelraster
MehrAccess 2013. Grundlagen für Anwender. Susanne Weber. 1. Ausgabe, 1. Aktualisierung, Juni 2013
Access 2013 Susanne Weber 1. Ausgabe, 1. Aktualisierung, Juni 2013 Grundlagen für Anwender ACC2013 2 Access 2013 - Grundlagen für Anwender 2 Mit Datenbanken arbeiten In diesem Kapitel erfahren Sie was
MehrProfessionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
MehrLineare Gleichungssysteme
Brückenkurs Mathematik TU Dresden 2015 Lineare Gleichungssysteme Schwerpunkte: Modellbildung geometrische Interpretation Lösungsmethoden Prof. Dr. F. Schuricht TU Dresden, Fachbereich Mathematik auf der
MehrStep by Step Webserver unter Windows Server 2003. von Christian Bartl
Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird
MehrBusiness Intelligence Praktikum 1
Hochschule Darmstadt Business Intelligence WS 2013-14 Fachbereich Informatik Praktikumsversuch 1 Prof. Dr. C. Wentzel Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 14.10.2013 Business Intelligence Praktikum
MehrWinWerk. Prozess 6a Rabatt gemäss Vorjahresverbrauch. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang 16 8307 Effretikon
WinWerk Prozess 6a Rabatt gemäss Vorjahresverbrauch 8307 Effretikon Telefon: 052-740 11 11 Telefax: 052-740 11 71 E-Mail info@kmuratgeber.ch Internet: www.winwerk.ch Inhaltsverzeichnis 1 Ablauf der Rabattverarbeitung...
MehrData Warehousing. Ausführung von OLAP Operationen. Ulf Leser Wissensmanagement in der Bioinformatik
Data Warehousing Ausführung von OLAP Operationen Ulf Leser Wissensmanagement in der Bioinformatik Variante 1 - Snowflake Year id year Productgroup id pg_name Month Id Month year_id Day Id day month_id
Mehr1. Übungsblatt. Besprechung: 27.10 (Gruppe A), 3.11 (Gruppe B)
DATENBANKEN IN DER PRAXIS: DATA WAREHOUSING Wintersemester 2015/2016 Prof. Dr. Jens Teubner DBIS Group Übung: Dr. Cornelia Tadros ISSI Group Allgemeine Hinweise 1. Übungsblatt Besprechung: 27.10 (Gruppe
MehrAuswertung für Warenwirtschaft/ERP, Interbase und ODBC... 2
Cubix O.L.A.P... 2 Auswertung für Warenwirtschaft/ERP, Interbase und ODBC... 2 Datenverbindung über ODBC... 4 Datenbereitstellung über SQL... 5 Festlegung der Dimensionen... 6 Festlegung der Summen...
MehrInformationsblatt Induktionsbeweis
Sommer 015 Informationsblatt Induktionsbeweis 31. März 015 Motivation Die vollständige Induktion ist ein wichtiges Beweisverfahren in der Informatik. Sie wird häufig dazu gebraucht, um mathematische Formeln
MehrSQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar
Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-
MehrFachhochschule Deggendorf Platzziffer:...
Sommersemester 2008 Zahl der Blätter: 9 Fachbereich: Betriebswirtschaft WI Bachelor Hilfsmittel: alles ohne Computer Zeit: 90 Minuten 1 Betrachten Sie die drei markierten Zeilen. 1. Angenommen Sie hätten
Mehr13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.
13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen. Sie heißt linear, wenn sie die Form y (n) + a n 1 y (n 1)
MehrSQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:
SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In
MehrSie sollen eine Datenbank für Befragungen mittels Online-Fragebögen zu unterschiedlichen Themen erstellen:
FRAGEBOGEN-AUFGABE Sie sollen eine Datenbank für Befragungen mittels Online-Fragebögen zu unterschiedlichen Themen erstellen: Ein Fragebogen besteht aus mehreren Fragen, eine Frage kann in mehreren Fragebögen
MehrModel Klausel - Der Excel-Killer von Oracle?
Model Klausel - Der Excel-Killer von Oracle? Andrea Kennel Trivadis AG Glattbrugg, Schweiz Schlüsselworte: Model Klausel, SQL, Data Warehousing, OLAP Zusammenfassung Ein Data Mart kann als ein Würfel mit
MehrBeweisbar sichere Verschlüsselung
Beweisbar sichere Verschlüsselung ITS-Wahlpflichtvorlesung Dr. Bodo Möller Ruhr-Universität Bochum Horst-Görtz-Institut für IT-Sicherheit Lehrstuhl für Kommunikationssicherheit bmoeller@crypto.rub.de 6
MehrIn diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.
In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access Die Grundlagen der Datenbanken kurspc15 Inhaltsverzeichnis Access... Fehler! Textmarke nicht
MehrHandbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken
Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen
MehrPrimzahlen und RSA-Verschlüsselung
Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also
MehrAnwendertreffen 20./21. Juni
Anwendertreffen Verbindungsmittelachsen VBA Allgemein Die Verbindungsmittelachsen werden nun langsam erwachsen. Nach zwei Jahren Einführungszeit haben wir bereits viele Rückmeldungen mit Ergänzungswünschen
MehrEinführung in. Logische Schaltungen
Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von
MehrAZK 1- Freistil. Der Dialog "Arbeitszeitkonten" Grundsätzliches zum Dialog "Arbeitszeitkonten"
AZK 1- Freistil Nur bei Bedarf werden dafür gekennzeichnete Lohnbestandteile (Stundenzahl und Stundensatz) zwischen dem aktuellen Bruttolohnjournal und dem AZK ausgetauscht. Das Ansparen und das Auszahlen
MehrKampagnenmanagement mit Siebel Marketing/Oracle BI ein Praxisbericht
Kampagnenmanagement mit Siebel Marketing/Oracle BI ein Praxisbericht Thomas Kreuzer ec4u expert consulting ag Karlsruhe Schlüsselworte: Kampagnenmanagement Praxisbericht Siebel Marketing Oracle BI - ec4u
MehrSQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck
SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Fahren fort mit SQL Befehlen. Bilden Relationenalgebra auf SQL ab. So Umsetzung von Anfragen an die DB (bzw. Tabellen) möglich. SELECT
MehrDokumentation: ZIBXL - Auswertung der internen Umbuchungen
IT-Dienste Jochen Meiners 14. Mai 2008 Dokumentation: ZIBXL - Auswertung der internen Umbuchungen Stand: 14.05.2008 1. Version Dokumentation: ZIBXL - Auswertung der internen Umbuchungen... 1 1 Aufruf des
Mehr4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.
Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel
MehrSeminar Business Intelligence Teil II. Data Mining & Knowledge Discovery
Seminar Business Intelligence Teil II Data Mining & Knowledge Discovery Was ist Data Mining? Sabine Queckbörner Was ist Data Mining? Data Mining Was ist Data Mining? Nach welchen Mustern wird gesucht?
MehrChristian Kurze BI-Praktikum IBM WS 2008/09
Einführung in die multidimensionale Datenmodellierung e mit ADAPT BI-Praktikum IBM WS 2008/09 1 Gliederung Einführung multidimensionale Datenmodellierung 1. Multidimensionales Modell BI-Praktikum IBM WS
MehrIm Original veränderbare Word-Dateien
Objekte einer Datenbank Microsoft Access Begriffe Wegen seines Bekanntheitsgrades und der großen Verbreitung auch in Schulen wird im Folgenden eingehend auf das Programm Access von Microsoft Bezug genommen.
MehrPivotieren. Themenblock: Anfragen auf dem Cube. Roll-up und Drill-down. Slicing und Dicing. Praktikum: Data Warehousing und Data Mining. Produkt.
Zeit Pivotieren Themenblock: Anfragen auf dem Cube Praktikum: Data Warehousing und Data Mining Zeit Zeit 2 Roll-up und Drill-down Slicing und Dicing Drill-down Januar 2 3 33 1. Quartal 11 36 107 Februar
MehrEin Ausflug zu ACCESS
Ein Ausflug zu ACCESS Die folgenden Folien zeigen beispielhaft, wie man sein DB- Wissen auf ACCESS übertragen kann betrachtet wird ACCESS 2002, da gerade im Bereich der Nutzung von SQL hier einiges nachgearbeitet
MehrDruckvorlagen Als Druckvorlagen sind dafür vorhanden:!liste1.ken (Kennzahlen)!Liste2.KEN (Kontennachweis)
Kennzahlen und Kennzeichen Dieses Dokument zeigt Ihnen in wenigen kurzen Schritten die Logik und Vorgehensweise der Definition der Kennzahlen und Kennzeichen und deren Auswertung in eigens dafür vorhandenen
Mehr4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:
4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie
MehrProgrammieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler
Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Informationen aus der Datenbank lesen Klasse SQLiteDatabase enthält die Methode query(..) 1. Parameter: Tabellenname
MehrBinäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen
Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders
MehrSQL - Übungen Bearbeitung der Datenbank Personal (1)
Bearbeitung der Datenbank Personal (1) 1. Abfragen einer einzigen Tabelle 1.1. Zeigen Sie alle Informationen an, die über die Kinder der Mitarbeiter gespeichert sind. 1.2. Zeigen Sie aus der Tabelle stelle
MehrEDV-Fortbildung Kombi-Schulung Word-Excel 2010. Modul Excel. Informationen zum Programm. Die Programmoberfläche von Excel
EDV-Fortbildung Kombi-Schulung Word-Excel 2010 Modul Excel Informationen zum Programm Microsoft Excel ist das meistverbreitete Programm zur Tabellenkalkulation. Excel bietet sich für umfangreiche, aber
MehrKonzepte der Informatik
Konzepte der Informatik Vorkurs Informatik zum WS 2011/2012 26.09. - 30.09.2011 17.10. - 21.10.2011 Dr. Werner Struckmann / Christoph Peltz Stark angelehnt an Kapitel 1 aus "Abenteuer Informatik" von Jens
MehrInsiderwissen 2013. Hintergrund
Insiderwissen 213 XING EVENTS mit der Eventmanagement-Software für Online Eventregistrierung &Ticketing amiando, hat es sich erneut zur Aufgabe gemacht zu analysieren, wie Eventveranstalter ihre Veranstaltungen
MehrStellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster
Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.
MehrHilfedatei der Oden$-Börse Stand Juni 2014
Hilfedatei der Oden$-Börse Stand Juni 2014 Inhalt 1. Einleitung... 2 2. Die Anmeldung... 2 2.1 Die Erstregistrierung... 3 2.2 Die Mitgliedsnummer anfordern... 4 3. Die Funktionen für Nutzer... 5 3.1 Arbeiten
MehrLeitfaden #1a. "zanox Publisher-Statistik" (next generation)
Leitfaden #1a "zanox Publisher-Statistik" (next generation) Thema: Sortieren von Leads und Sales nach dem Bearbeitungsdatum (inklusive Abschnitt "Filterung nach Transaktionsstatus") 1/8 Leitfaden "Sortieren
MehrV 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x + 400 y = 520 300x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775,
Aufgabenpool für angewandte Mathematik / 1. Jahrgang V B, C, D Drinks Ein gastronomischer Betrieb kauft 300 Dosen Energydrinks (0,3 l) und 400 Liter Flaschen Mineralwasser und zahlt dafür 50, Euro. Einen
MehrDas große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten
Das große x -4 Alles über das Wer kann beantragen? Generell kann jeder beantragen! Eltern (Mütter UND Väter), die schon während ihrer Elternzeit wieder in Teilzeit arbeiten möchten. Eltern, die während
MehrMotivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel.
Kontextfreie Kontextfreie Motivation Formale rundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen Bisher hatten wir Automaten, die Wörter akzeptieren Frank Heitmann heitmann@informatik.uni-hamburg.de
Mehreevolution Business Intelligence Oliver Rzeniecki COMPRA GmbH Programmierer & Datenbankadministrator
eevolution Business Intelligence Oliver Rzeniecki COMPRA GmbH Programmierer & Datenbankadministrator Agenda Was ist Business Intelligence? Was ist OLAP? Unterschied zwischen OLAP und OLTP? Bestandteile
Mehr8. Berechnung der kalkulatorischen Zinsen
8. Berechnung der kalkulatorischen Zinsen 8.1. Allgemeines In der laufenden Rechnung werden im Konto 322.00 Zinsen nur die ermittelten Fremdkapitalzinsen erfasst. Sobald aber eine Betriebsabrechnung erstellt
MehrMathematik: Mag. Schmid Wolfgang Arbeitsblatt 3 1. Semester ARBEITSBLATT 3 RECHNEN MIT GANZEN ZAHLEN
ARBEITSBLATT 3 RECHNEN MIT GANZEN ZAHLEN Wir wollen nun die Rechengesetze der natürlichen Zahlen auf die Zahlenmenge der ganzen Zahlen erweitern und zwar so, dass sie zu keinem Widerspruch mit bisher geltenden
MehrTechnische Analyse der Zukunft
Technische Analyse der Zukunft Hier werden die beiden kurzen Beispiele des Absatzes auf der Homepage mit Chart und Performance dargestellt. Einfache Einstiege reichen meist nicht aus. Der ALL-IN-ONE Ultimate
MehrAccess 2010. Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012. inkl. zusätzlichem Übungsanhang ACC2010-UA
Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli 2012 Access 2010 Grundlagen für Anwender inkl. zusätzlichem Übungsanhang ACC2010-UA 3 Access 2010 - Grundlagen für Anwender 3 Daten in Formularen bearbeiten
MehrSo importieren Sie einen KPI mithilfe des Assistenten zum Erstellen einer Scorecard
1 von 6 102013 18:09 SharePoint 2013 Veröffentlicht: 16.07.2012 Zusammenfassung: Hier erfahren Sie, wie Sie einen KPI (Key Performance Indicator) mithilfe des PerformancePoint Dashboard Designer in SharePoint
MehrDHBW Karlsruhe, Vorlesung Programmieren, Klassen (2)
DHBW Karlsruhe, Vorlesung Programmieren, Klassen (2) Aufgabe 3 Bankkonto Schreiben Sie eine Klasse, die ein Bankkonto realisiert. Attribute für das Bankkonto sind der Name und Vorname des Kontoinhabers,
MehrGrundlagen der Künstlichen Intelligenz
Grundlagen der Künstlichen Intelligenz 27. Aussagenlogik: Logisches Schliessen und Resolution Malte Helmert Universität Basel 28. April 2014 Aussagenlogik: Überblick Kapitelüberblick Aussagenlogik: 26.
MehrWinWerk. Prozess 4 Akonto. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang 16 8307 Effretikon
Prozess 4 Akonto WinWerk 8307 Effretikon Telefon: 052-740 11 11 Telefax: 052 740 11 71 E-Mail info@kmuratgeber.ch Internet: www.winwerk.ch Inhaltsverzeichnis 1 Akonto... 2 1.1 Allgemein... 2 2 Akontobeträge
Mehr