Kapitel 9: Operationen auf dem Cube Multidimensional Expressions (MDX) Was ist MDX? MDX Queryinterface und API. Konzepte - Microsoft Terminologie
|
|
- Bella Raske
- vor 7 Jahren
- Abrufe
Transkript
1 Kapitel 9: Operationen auf dem Cube Multidimensional Expressions (MDX) Was ist MDX? Microsoft Terminologie im OLAP Bereich MDX Basiskonstrukte MDX weiterführende Konstrukte Fazit Was ist MDX? Ist SQL für OLAP genügend? Nicht bequem genug, unterstützt nicht die multidimensionale Sicht. Bisher hieß es, ein wichtiges Ziel seien intuitive Mechanismen für die Datenanalyse. Wieso brauchen wir jetzt eine komplexe Querysprache? Nicht jede Sicht läßt sich zusammenklicken, wie wir sehen werden. Man möchte Anwender vielleicht nicht immer mit generischem Interface belasten, sondern das Arbeiten durch Einschränkung auf spezielle anwendungsspezifische Interaktionsmöglichkeiten erleichtern. MDX ist kurz für Multidimensional Expressions, DDL und DML für multidimensionale Daten ( Definieren, Ändern und Abfragen ), MDX Microsoft-Entwicklung, Andere Hersteller von DBMSen/Data Warehouses (Oracle, SAP) bieten vergleichbare Anfragesprachen. Data Warehousing und Mining: MDX. 1 Data Warehousing und Mining: MDX. 2 MDX Queryinterface und API Konzepte - Microsoft Terminologie Query-Interface, mit dem im folgenden gearbeitet wird, illustriert nur das Querying. Query-Interface illustriert nicht den Zugriff über die Programmierschnittstelle, das Definieren von Hilfsstrukturen und das Wiederverwenden von Definitionen. Cubes Grundkonzept in OLAP multidimensionale Strukturen [maximal 64 Dimensionen] Dimensions Menge von Attributen, die Dimension sein können; sie können nicht Measures sein, Selektion über diese Attribute ist möglich, genau wie beim Microsoft OLAP-Browser, Dimension ist hierarchisch aufgebaut, private oder shared ( shared Dimension wurde für mehrere Cubes definiert) Data Warehousing und Mining: MDX. 3 Data Warehousing und Mining: MDX. 4
2 Konzepte - Microsoft Terminologie Hierarchien in einer Dimension - Erläuterung Measures Menge von Attributen, die nur Measures sein können (bis auf Spezialfälle), Measure ist eine spezielle Dimension in der MDX- Vorstellungswelt, flache Hierarchie Members Knoten der Hierarchie einer Dimension, vorgegeben vs. calculated, Beispiel: Halbjahr. Typ-Perspektive: Store Store Country Store State Store City Instanzen-Perspektive: Canada USA Mexico CA WA Store Name Data Warehousing und Mining: MDX. 5 Data Warehousing und Mining: MDX. 6 Data Warehousing und Mining: MDX. 7 Data Warehousing und Mining: MDX. 8
3 Sonderrolle der Measures in MDX Illustration für unsere erste MDX-Query Im allgemeinen hat man Vektor von Measures: SALES TIME Year Month Jan Feb Jan Feb CATEGORY Part City (Cost, Sale) PC Montreal (5,6) (5,7) (4,6) (4,8) Toronto (5,7) (5,8) (4,8) (4,9) Inkjet Montreal (7,8) (7,9) (6,9) (6,8) New York (6,9) (6,9) (5,8) (5,9) Location ( Store ) Location ( Store ) MDX behandelt Gesamtheit der möglichen Measures wie eine Dimension. CATEGORY Store Type Store Type Unit Sales Measure Sales Avg. Measure Cost Sale MEASURES TIME Data Warehousing und Mining: MDX. 9 Data Warehousing und Mining: MDX. 10 Beispiele, die Aufbau von MDX-Queries illustrieren Query, die Ausschnitt des Data Cubes mit _herkömmlichen_ Dimensionen definiert: SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, {[Store].[Store State].MEMBERS} ON ROWS WHERE (Measures.[Sales Average]) Measures ist spezielle Dimension im MDX-Kontext. Erläuterungen zum Aufbau der Ausdrücke in der SELECT-Klausel (vor ON COLUMNS bzw. ON ROWS ): Dimensionsname, gefolgt von Hierarchiebezeichnungen auf der Typebene (von oben nach unten), Hierarchiebezeichnungen auf der Typebene können ausgelassen werden (wenn eindeutig), Wiederholung des Dimensionsnamen, wenn keine richtige Hierarchie, Mengenklammern können hier weggelassen werden; werden gebraucht, wenn Ausschnitt in einer Dimension durch mehrere Ausdrücke definiert ist, eckige Klammern werden nur gebraucht, wenn Dimensionsname oder Hierarchiebezeichnung Leerzeichen enthält. Beispiel-Query von eben: SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, {[Store].[Store State].MEMBERS} ON ROWS WHERE (Measures.[Sales Average]) Erläuterungen: Query, die Ausschnitt des Data Cubes mit _herkömmlichen_ Dimensionen definiert (s. b. Abbildung links auf vorangegangener Folie), Auswahl des Measures erfolgt durch die WHERE-Klausel, mehrere Measures sind NICHT zulässig, d. h. MDX-Interpreter generiert keine integrierte Tabelle, Einschränkungen der Dimensionen sind möglich (Definitionsmöglichkeiten hierzu, die im folgenden vorgestellt werden, sind sehr mächtig), WHERE-Klausel kann weggelassen werden Default-Measure wird verwendet nicht empfehlenswert, wird im folgenden wegen Übersichtlichkeit trotzdem oft gemacht. Data Warehousing und Mining: MDX. 11 Data Warehousing und Mining: MDX. 12
4 Data Warehousing und Mining: MDX. 13 Data Warehousing und Mining: MDX. 14 Query, die verdeutlicht, daß Measures eine Dimension ist/ vorhin angesprochener Spezialfall : SELECT Measures.MEMBERS ON COLUMNS, [Store].MEMBERS ON ROWS Erläuterungen: Angenommen, man würde die folgende WHERE-Klausel dazunehmen: WHERE (Measures.[Unit Sales]) Fehler, da WHERE-Klausel und Achsenspezifikation unabhängig sein müssen. Dieser Zusatz macht die Query außerdem sinnlos. Die folgende WHERE-Klausel WHERE ([Time].[Year].[1997]) ist dagegen OK. Weiterer Aspekt: Dimension ohne Hierarchie-Spezifikation führt dazu, daß alle Members angezeigt werden, unabhängig von der Position in der Hierarchie. Data Warehousing und Mining: MDX. 15 Data Warehousing und Mining: MDX. 16
5 Measures als gesonderte Dimension Von herkömmlicher Dimension kann man abstrahieren, z. B. 'über alle Stores aufsummieren'. Macht hier keinen Sinn. 'Default Measure' hat keine Entsprechung bei herkömmlichen Dimensionen. Wenn bei herkömmlicher Dimension keine Einschränkung, wird sie als Ganzes betrachtet. Default Measure wird bei Definition des Cubes festgelegt. Data Warehousing und Mining: MDX. 17 Data Warehousing und Mining: MDX. 18 Slicing vs. Filtering Filtering Auswahl der Axis Members, d. h. Achse ist schon vorgegeben. Slicing definiert das Maß bzw. schränkt Ausschnitt des Raums ein. (Begriffe für Konzepte, die z. T. schon illustriert wurden.) Illustration des Begriffs Slicing anhand der folgenden Query: SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, {[Store].[Store State].MEMBERS} ON ROWS WHERE (Product.[Drink]) Store ( Location ) Store Type Drink Food Product Was bedeuten diese Zahlen? Data Warehousing und Mining: MDX. 19 Data Warehousing und Mining: MDX. 20
6 Slicing Fortsetzung Slicing auch in mehreren Dimensionen möglich. Beispiele: SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, {[Store].[Store State].MEMBERS} ON ROWS WHERE ([Product].Drink, Measures.[Unit Sales]) Dimensionen: Product, Store (Ortsangabe), Time, Bildungsniveau (z. B. Fachabitur, Abitur), Measure (z. B. Umsatz, Gewinn) Tabelle mit Dimensionen Store und Zeit, die Gewinn mit Beer enthält. SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, {[Store].[Store State].MEMBERS} ON ROWS WHERE ([Product].Drink, Measures.[Unit Sales], [Time].[Year].[1997]) Was bedeutet es, diesen Teil der Anfrage wegzulassen? Was bedeutet es, diesen Teil der Anfrage wegzulassen? Data Warehousing und Mining: MDX. 21 Data Warehousing und Mining: MDX. 22 MDX Struktur der Abfragen Aufbau einer MDX-Query mit allen obligatorischen Bestandteilen: SELECT axis_specification ON COLUMNS, axis_specification ON ROWS FROM cube_name WHERE slicer_specification Erläuterungen: axis_specification = Selektieren der Dimensionen und Members für die Achse, Weitere Achsen sind möglich: ON COLUMNS ROWS PAGES CHAPTERS SECTIONS ON AXIS(0)... AXIS(63) Query-Tool gibt Fehlermeldung aus bei mehr als zwei Achsen. slicer_specification = Definition möglicher Projektionen des Data Cubes. Konstrukte für den Zugriff auf Members Beispiel-Query: SELECT Measures.MEMBERS ON COLUMNS, {[Store].[Store State].[CA].CHILDREN, [Store].[WA].CHILDREN} ON ROWS Erläuterungen (teilweise Wiederholung): MEMBERS - alle Elemente der Dimension, mit/ohne Beschränkung auf bestimmte Ebene der Hierarchie, CHILDREN alle Elemente in der entsprechenden Position, in diesem Fall Städte in CA und WA, [Store].[Store State].[WA] ist kein fully qualified name, wie bereits zuvor erwähnt (nicht alle Stufen der Hierarchie, Store Country wird übersprungen), ist aber OK wegen Uniqueness, WHERE Slicer-Spezifizierung weglassen = Standard-Measure wird angezeigt, Mehrere Member-Spezifikationen für eine Achse der Tabelle möglich. State kann man zusätzlich ausgeben. Data Warehousing und Mining: MDX. 23 Data Warehousing und Mining: MDX. 24
7 Konstrukte für den Zugriff auf Members (2) Ziel: Mehrere Levels einer Dimension in einer Tabelle, aber im Gegensatz zu MEMBERS wird Kontrolle über die Levels gewünscht. Konstrukt DESCENDANTS löst dieses Problem - Syntax: DESCENDANTS (member, level[, flag]) Flexibilität kommt über das Flag. Beispiel-Query: SELECT Measures.MEMBERS ON COLUMNS, {[Store].[Store State].[CA], DESCENDANTS([Store].[Store State].[CA], [Store City])} ON ROWS Online-Hilfe erläutert gut weitere Parameter, z. B. SELF, SELF_AND_AFTER. Data Warehousing und Mining: MDX. 25 Data Warehousing und Mining: MDX. 26 Data Warehousing und Mining: MDX. 27 Data Warehousing und Mining: MDX. 28 z
8 Weiterführende Konstrukte Calculated Members und Named Sets Definition neuer Members, z. B. abgeleitete Measures (Beispiel: Rendite als Funktion von eingesetztem Kapital und Profit), Hierarchisches Navigieren Verknüpfung von Zellen an unterschiedlichen Positionen der Hierarchie (Beispiel: Umsatz in CA als Anteil des U.S.A.-Umsatzes) Zeitserien Vergleich von zeitbezogenen Werten mit Werten aus Vergleichszeitraum (Beispiel: Vergleichsmonat Vorjahreszeitraum) Tuples und CROSSJOIN mehr als zwei Dimensionen pro Tabelle, Filtern und Sortieren Top und Bottom Analysen, z. B. Top-N Queries Numerische und bedingte Abfragen, z. B. COUNT, SUM bzw. frei definierte Bedingungen (COUNT z. B. Anzahl der Tupel mit einer bestimmten Eigenschaft) Named Sets Motivation: Explizit benamte Mengen schaffen Übersichtlichkeit und erhöhen Wiederverwendbarkeit und Fehlertoleranz. Wir definieren hier Named Sets von Members. Beispiel: WITH SET bigcitystates AS '{Store.CA, Store.WA}' SET nobigcitystates AS 'EXCEPT(DESCENDANTS(Store,[Store State]), bigcitystates)' SELECT nobigcitystates ON ROWS, Time.MEMBERS ON COLUMNS Erläuterung: EXCEPT ist DIFF-Operator. Data Warehousing und Mining: MDX. 29 Data Warehousing und Mining: MDX. 30 Cross-Dimensional Operations Folie aus vergangenem Kapitel Verknüpfungen von Werten aus unterschiedlichen Dimensionen Beispiel für single-dimensional Berechnung: Anzahl der Angestellten = Belegschaft - Anzahl Arbeiter Allen Werten entspricht die gleiche Position im DataCube. Beispiel für cross-dimensional Berechnung: Bereinigter projizierter Gewinn = Projizierter Gewinn, verrechnet mit Währungsrisiko des jeweiligen Landes. Bildungsgrad Studium Abitur Hauptschule Hessen Bayern Saarland Ort Datum Data Warehousing und Mining: MDX. 31 Data Warehousing und Mining: MDX. 32
9 Calculated Members (1) Ziel: Definition neuer Members, in Abhängigkeit bereits existierender Members, sowohl für Dimensionen als auch für Measures, Beispiele: Abgeleitete Measures, z. B. Profit, wenn Umsatz und Kosten bekannt, Profit = (Umsatz Kosten)/Kosten, Diese Definition ist unabhängig davon, welche Position des Cubes man betrachtet. Neuaufteilung der Dimensionen, z. B. Quartalseinteilung des Jahres, basierend auf Monaten. Calculated Members (2) Beispiel in MDX: WITH MEMBER Measures.ProfitPercent AS '(Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost])', FORMAT_STRING = '#.00%' SELECT {Measures.ProfitPercent} ON COLUMNS, Store.MEMBERS ON ROWS definiert Dimension und Position in Hierarchie Name des Calculated Members Aufbau des Calculated Members -Statements: WITH MEMBER parent.name AS 'expression' Data Warehousing und Mining: MDX. 33 Data Warehousing und Mining: MDX. 34 Calculated Members (3) Weiteres Beispiel: SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, {[Store].[Store State].MEMBERS} ON ROWS WHERE ([Product].Drink, Measures.[Unit Sales]) WITH MEMBER MEASURES.DrinkSales AS '([Product].Drink, Measures.[Unit Sales])' SELECT {[Store Type].[Store Type].MEMBERS} ON COLUMNS, {[Store].[Store State].MEMBERS} ON ROWS WHERE (Measures.[DrinkSales]) WITH MEMBER MEASURES.DrinkSales AS '([Product].Drink, Measures.[Unit Sales])' SELECT {MEASURES.DrinkSales, Measures.[Unit Sales]} ON COLUMNS, {[Store].[Store State].MEMBERS} ON ROWS Beispiel illustriert, daß abgeleitete Measures Einschränkung entlang anderer Dimensionen vornehmen können. äquivalent Data Warehousing und Mining: MDX. 35 Calculated Members (4) Beispiel für Calculated Member-Definition für Dimension, die nicht Measures ist: WITH MEMBER [Time].[First Half 97] AS '[Time].[1997].[Q1] + [Time].[1997].[Q2]' MEMBER [Time].[Second Half 97] AS '[Time].[1997].[Q3] + [Time].[1997].[Q4]' Man beachte: Summe ist hartkodiert. Definition ist wiederum unabhängig von konkreten Werten anderer Dimensionen. Calculated Members müssen unter der Wurzel der Hierarchie eingehängt werden. Beispiel, das nicht funktioniert: WITH MEMBER Measures.ProfitPercent AS '(Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost])', FORMAT_STRING = '#.00%' MEMBER [Time].[Year].[H1] AS '[Time].[Year].[Q1] + [Time].[Year].[Q2] MEMBER [Time].[Year].[H2] AS '[Time].[Year].[Q3] + [Time].[Year].[Q4] SELECT {[Time].[Year].[H1], [Time].[Year].[H2]} ON COLUMNS, {[Store].[Store Name].MEMBERS} ON ROWS WHERE (Measures.ProfitPercent) Data Warehousing und Mining: MDX. 36
10 Solve_order (1) Beispiel Halbjahresprofit, verwendet beide abgeleiteten Members von eben. Erster Versuch, nicht ausreichend: WITH MEMBER Measures.ProfitPercent AS '(Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost])', FORMAT_STRING = '#.00%' MEMBER [Time].[First Half 97] AS '[Time].[1997].[Q1] + [Time].[1997].[Q2]' MEMBER [Time].[Second Half 97] AS '[Time].[1997].[Q3] + [Time].[1997].[Q4]' SELECT {[Time].[First Half 97], [Time].[Second Half 97], [Time].[1997].CHILDREN} ON COLUMNS, {[Store].[Store Name].MEMBERS} ON ROWS WHERE (Measures.ProfitPercent) Solve_order (2) Beispiel Fortsetzung: Q1 Q2 Q3 Q4 Sales Cost WITH MEMBER Measures.ProfitPercent AS '(Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost])' Q1 Q2 Q3 Q4 5 2 Profit WITH MEMBER [Time].[H1] AS '[Time].[1997].[Q1] + [Time].[1997].[Q2]' MEMBER [Time].[H2] AS '[Time].[1997].[Q3] + [Time].[1997].[Q4]' H1 H2 Sales Cost Profit H1 H Data Warehousing und Mining: MDX. 37 Man muß explizit angeben, in welcher Reihenfolge Ableitungen zur Anwendung kommen sollen. Data Warehousing und Mining: MDX. 38 Solve_order (3) Cross-Dimensional Operations Folie aus vergangenem Kapitel Beispiel: WITH MEMBER Measures.ProfitPercent AS '(Measures.[Store Sales] - Measures.[Store Cost]) / (Measures.[Store Cost])', FORMAT_STRING = '#.00%', SOLVE_ORDER = 1 MEMBER [Time].[First Half 97] AS '[Time].[1997].[Q1] + [Time].[1997].[Q2]' MEMBER [Time].[Second Half 97] AS '[Time].[1997].[Q3] + [Time].[1997].[Q4]' SELECT {[Time].[First Half 97], [Time].[Second Half 97], [Time].[1997].CHILDREN} ON COLUMNS, {[Store].[Store Name].MEMBERS} ON ROWS WHERE (Measures.ProfitPercent) Größerer SOLVE_ORDER-Wert bedeutet, daß MDX zuerst versucht, diesen Ausdruck aufzulösen. Verknüpfungen von Werten aus unterschiedlichen Dimensionen Beispiel für single-dimensional Berechnung: Anzahl der Angestellten = Belegschaft - Anzahl Arbeiter Allen Werten entspricht die gleiche Position im DataCube. Beispiel für cross-dimensional Berechnung: Bereinigter projizierter Gewinn = Projizierter Gewinn, verrechnet mit Währungsrisiko des jeweiligen Landes. Bildungsgrad Studium Abitur Hauptschule Hessen Bayern Saarland Ort Datum Data Warehousing und Mining: MDX. 39 Data Warehousing und Mining: MDX. 40
11 Beziehungen zwischen Hierarchie-Elementen (1) Motivation: Verknüpfung von Werten, die unterschiedlichen Members in der Hierarchie entsprechen, Beispiel: Anteil des Umsatzes mit Bier am Gesamtumsatz Getränke Data Warehousing und Mining: MDX. 41 Data Warehousing und Mining: MDX. 42 Beziehungen zwischen Hierarchie-Elementen (2) Beispiel MDX-Statement: WITH MEMBER MEASURES.PercentageSales AS '([Product].CURRENTMEMBER, Measures.[Unit Sales]) / ([Product].CURRENTMEMBER.PARENT, Measures.[Unit Sales])', FORMAT_STRING = '#.00%' SELECT {MEASURES.[Unit Sales], MEASURES.PercentageSales} ON COLUMNS, [Product].[Brand Name].MEMBERS ON ROWS Erläuterung: Tupel mit mehreren Komponenten in der Member- Definition, z. B. ([Product].CURRENTMEMBER, Measures.[Unit Sales]), ist Einschränkung über mehrere Dimensionen. Was passiert, wenn ROW-Achse nicht über Product? Data Warehousing und Mining: MDX. 43 Data Warehousing und Mining: MDX. 44
12 Beziehungen zwischen Hierarchie-Elementen Fortsetzung Konstrukt ANCESTOR anstelle von PARENT.PARENT... Übersichtlicher, Einfacher zu programmieren, Änderungsfreundlicher Beispiel: WITH MEMBER MEASURES.PercentageSales AS '([Product].CURRENTMEMBER, Measures.[Unit Sales]) / (ANCESTOR([Product].CURRENTMEMBER, [Product Category]), MEASURES.[Unit Sales])' Query von eben mit Konstrukt ANCESTOR? Data Warehousing und Mining: MDX. 45 Data Warehousing und Mining: MDX. 46 Generieren Sie mit MDX die folgende Tabelle: x-achse ist Zeit, genauer gesagt, die Jahre und die Quartale. y-achse ist Dimension 'Promotions'. Measure ist 'Unit Sale'. GENERATE (1) Motivation: Anwendung eines Templates auf alle Elemente einer Menge, Beispiel: Wir wollen alle Store Cities in NoBigCityStates. Mit unserem jetzigen Wissen müßten wir die NoBigCityStates einzeln aufzählen, für jede Ableitung von Store Cities einzeln. Konstrukt GENERATE löst das Problem Beispiel: 'GENERATE(NoBigCityStates, Store.CURRENTMEMBER.CHILDREN) Menge Template spezieller Platzhalter Data Warehousing und Mining: MDX. 47 Data Warehousing und Mining: MDX. 48
13 GENERATE (2) Beispiel: SELECT {GENERATE([Time].[Year].MEMBERS, {[Time].CURRENTMEMBER, [Time].CURRENTMEMBER.CHILDREN})} ON COLUMNS, [Promotions].[All Promotions].CHILDREN ON ROWS WHERE (Measures.[Unit Sales]) Man braucht das CURRENTMEMBER, um sicherzustellen, daß die Jahre und genau die Quartale aus dem Jahr zusammen aufgeführt werden. SELECT {[Time].[Year].MEMBERS, [Time].[Year].CHILDREN} löst das Problem nicht. Data Warehousing und Mining: MDX. 49 Data Warehousing und Mining: MDX. 50 Zeitserien (1) Zeitserien (2) Motivation: Vergleich von Werten mit Werten aus Vergleichszeitraum, z. B. gleicher Wert im Vorjahr. Parameter: Member der Dimension Time, Beispiel für vollständiges MDX-Statement: WITH MEMBER Measures.[Profit Growth] AS '(Measures.[Profit]) (Measures.[Profit], PARALLELPERIOD([Time].[Quarter]))', FORMAT_STRING = '###,###.00' SELECT {Measures.[Profit], Measures.[Profit Growth]} ON COLUMNS, {DESCENDANTS([Time].[1997], [Month])} ON ROWS Default: Vorgängerperiode. Hier im Beispiel wird Monat des Vorgängerquartals genommen. Data Warehousing und Mining: MDX. 51 Data Warehousing und Mining: MDX. 52
14 Zeitserien konkrete Konstrukte PARALLELPERIOD = Element an gleicher Stelle in vorheriger Periode (z. B. gleiches Quartal im vorherigen Jahr) Parameter: Members der Dimension Time, (Es existiert auch allgemeinere Funktion COUSIN.) OPENINGPERIOD = Element an erster Stelle in der Periode (z. B. erstes Quartal im Jahr) CLOSINGPERIOD = Element an letzter Stelle in der Periode (z. B. letztes Quartal im Jahr) PERIODSTODATE = alle Elemente bis an eine spezifizierte Stelle (z. B. alle Quartale bis heute) YTD QTD MTD WTD Abkürzungen für Ausdrücke mit PERIODSTODATE Tuples und CROSSJOIN Motivation: Dimension mit mehr als einem Attribut, Tuples = Kombination von Elementen verschiedener Dimensionen (in der Demo Werte entlang der Achse) Beispiele für Tupel: (Supermarket, CA), (Supermarket, DF),... (Deli, CA),... Wie erzeugt man Tupel automatisch? CROSSJOIN = Kreuzprodukt zweier Elementmengen Beispiel: CROSSJOIN([Customers].[City].MEMBERS, [Time].[Quarter].MEMBERS) Data Warehousing und Mining: MDX. 53 Data Warehousing und Mining: MDX. 54 Data Warehousing und Mining: MDX. 55 Data Warehousing und Mining: MDX. 56
15 Filtern und Sortieren FILTER, ORDER, TOPCOUNT etc., die im folgenden besprochen werden, haben alle den gleichen Aufbau: Operator(Member-Expression, Bedingung/Sortierkriterium etc.) Data Warehousing und Mining: MDX. 57 Data Warehousing und Mining: MDX. 58 Data Warehousing und Mining: MDX. 59 Data Warehousing und Mining: MDX. 60
16 Filtern Motivation: Einschränkung der Elemente einer Achse, man will mehr können als nur die relevanten Members explizit hinzuschreiben. Beispiel: spezielle Filterbedingung SELECT NON EMPTY {[Store Type].[Store Type].MEMBERS} ON COLUMNS, FILTER({[Store].[Store City].MEMBERS}, (Measures.[Unit Sales], [Time].[1997])>25000) ON ROWS Bedingung WHERE (Measures.[Profit], [Time].[Year].[1997]) Erläuterung: NON EMPTY stellt sicher, daß mindestens eine Zelle der Tabelle nicht leer ist. Sortieren Sortieren Aufbau des Sortier-Operators ist wie der einer Filtering Expression: angewendet auf Liste (heißt hier Menge ), liefert ORDER-Operator Liste zurück, Aufbau: ORDER(set, expression[, ASC DESC...]) Sortierkriterium Menge, auf die Filter angewendet wird Data Warehousing und Mining: MDX. 61 Data Warehousing und Mining: MDX. 62 Sortieren Beispiel Side Issue : Spezifikation von Ranges ist möglich: SELECT Measures.MEMBERS ON COLUMNS, {[Store].[Store City].[Beverly Hills]:[Spokane]} ON ROWS Dieselbe Anfrage, dieses Mal mit Sortierung: SELECT Measures.MEMBERS ON COLUMNS, ORDER({[Store].[Store City].[Beverly Hills]:[Spokane]}, [Store].CURRENTMEMBER.Name, BASC) ON ROWS Präfix B bedeutet, daß die Hierarchie für die Sortierung aufgebrochen wird. Data Warehousing und Mining: MDX. 63 Data Warehousing und Mining: MDX. 64
17 Data Warehousing und Mining: MDX. 65 Data Warehousing und Mining: MDX. 66 v Aggregationsfunktionen SUM, COUNT, AVG, MAX Nützlich für die Definition abgeleiteter Measures. Beispiele: SUM(BigCityStates, Measures.[Unit Sales]) WITH MEMBER Measures.[Customer Count] AS 'COUNT(CROSSJOIN({Measures.[Unit Sales]}, [Customers].[Name].MEMBERS), EXCLUDEEMPTY)' SELECT {Measures.[Unit Sales], Measures.[Customer Count]} ON COLUMNS, [Product].[Product Category].MEMBERS ON ROWS Äquivalente Query, allerdings etwas langsamer in der Ausführung: WITH MEMBER Measures.[Customer Count] AS 'COUNT(FILTER((Measures.[Unit Sales], [Customers].[Name].MEMBERS)>0)) SELECT {Measures.[Unit Sales], Measures.[Customer Count]} ON COLUMNS, [Product].[Product Category].MEMBERS ON ROWS Top-N Queries Konstrukte: HEAD = die ersten n Elemente in einem Set TAIL = die letzten n Elemente in einem Set TOPCOUNT TOPPERCENT TOPSUM = die n besten Elemente in einem Set BOTTOMCOUNT BOTTOMPERCENT BOTTOMSUM = die n schlechtesten Elemente in einem Set Beispiel: SELECT Measures.MEMBERS ON COLUMNS, TOPCOUNT({[Store].[Store City].MEMBERS}, 12, Measures.[Sales Count]) ON ROWS Data Warehousing und Mining: MDX. 67 Data Warehousing und Mining: MDX. 68
18 Data Warehousing und Mining: MDX. 69 Data Warehousing und Mining: MDX. 70 Fazit Mögliche Prüfungsfragen Zusammenfassung: MDX ist für IT-Entwickler ein relativ angenehmes und leistungsfähiges Werkzeug. MDX ist für IT-Anwender hingegen kompliziert und schwierig erlernbar. Zielsetzung dieser Sprache: Einbettung von MDX-Queries in Anwendungen, die dem Entscheider vordefinierte Analysen zur Verfügung stellen. Insbesondere der zweite Teil hat verdeutlicht, daß man mit MDX mehr erreichen kann als mit Slice&Dice Interaktionsmechanismen. Vertauschung von Dimensionen und Measures wie im zuvor betrachteten Modell ist hier nicht möglich, außerdem weitere Unschönheiten. <Anfragen mit MDX formulieren können.> Was bedeutet weitere Unschönheiten auf vorangegangener Folie? Data Warehousing und Mining: MDX. 71 Data Warehousing und Mining: MDX. 72
definiert Dimension und Position in Hierarchie Name des Calculated Members Aufbau des Calculated Members -Statements:
6.7 Workshop: Fortsetzung MDX weiterführende Konstrukte Calculated Members und Named Sets Definition neuer Members, z.b. abgeleitete Measures (Beispiel: Rendite als Funktion von eingesetztem Kapital und
Mehr6.5 Workshop: Operationen auf dem Cube Multidimensional Expressions (MDX)
6.5 Workshop: Operationen auf dem Cube Multidimensional Expressions (MDX) Was ist MDX? Microsoft Terminologie im OLAP Bereich MDX Basiskonstrukte MDX weiterführende Konstrukte Fazit MDX.- 1 Was ist MDX?
MehrKapitel 9: Operationen auf dem Cube Multidimensional Expressions (MDX) Was ist MDX? MDX Queryinterface und API. Konzepte - Microsoft Terminologie
Kapitel 9: Operationen auf dem Cube Multidimensional Expressions (MDX) Was ist MDX? Microsoft Terminologie im OLAP Bereich MDX Basiskonstrukte MDX weiterführende Konstrukte Fazit Was ist MDX? Ist SQL für
MehrAnfragesprachen für On-Line Analytical Processing (OLAP)
Anfragesprachen für On-Line Analytical Processing (OLAP) Seminar Business Intelligence Teil I: OLAP & Data Warehousing René Rondot rondot@informatik.uni-kl.de Universität Kaiserslautern Anfragesprachen
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
MehrSummarization-based Aggregation
Summarization-based Aggregation Daten Generalisierung: Prozess, der Anwendungsdaten schrittweise von niedrigen auf höhere konzeptuelle Level aggregiert Conceptual levels 2 3 4 5 example: all federal states
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
MehrBusiness Intelligence & Reporting. Michael Cordes Holger Oehring Matthias Rein
Business Intelligence & Reporting Michael Cordes Holger Oehring Matthias Rein Ziele Einführung Business Intelligence / Front Room Online Analytical Processing (OLAP) Arten des Reporting & Nutzergruppen
MehrMultidimensionale Modellierung
Multidimensionale Modellierung Vorlesung: Übung: Patrick Schäfer Berlin, 27. November 2017 patrick.schaefer@hu-berlin.de https://hu.berlin/vl_dwhdm17 https://hu.berlin/ue_dwhdm17 Grundlagen Fakten (Kennzahlen/Messgrößen):
MehrKapitel 5: Vom relationalen zum multidimensionalen Datenmodell
Kapitel 5: Vom relationalen zum multidimensionalen Datenmodell Data Warehousing und Mining 1 Data Warehousing, Gliederung Dimensionen und Measures Schematypen für Data Warehousing GroupBy und Data Cubes
MehrKapitel 5: Vom relationalen zum multidimensionalen Datenmodell
Data Warehousing, Gliederung Kapitel 5: Vom relationalen zum multidimensionalen Datenmodell Dimensionen und Measures Schematypen für Data Warehousing GroupBy und Data Cubes Operatoren für den Data Cube
MehrAnalytic Views: Einsatzgebiete im Data Warehouse
Analytic Views: Einsatzgebiete im Data Warehouse Dani Schnider Trivadis AG Zürich/Glattbrugg, Schweiz Einleitung Analytic Views sind eine der wesentlichen Erweiterungen in Oracle 12c Release 2. Durch zusätzliche
MehrEs geht also im die SQL Data Manipulation Language.
1 In diesem Abschnitt wollen wir uns mit den SQL Befehlen beschäftigen, mit denen wir Inhalte in Tabellen ( Zeilen) einfügen nach Tabelleninhalten suchen die Inhalte ändern und ggf. auch löschen können.
MehrISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de
08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren
MehrEinleitung. ROLLUP, CUBE und GROUPING. Markus Jägle (markus.jaegle@trivadis.com) Art der Info Technische Background Info (April 2002)
Betrifft Autör: GROUPING_ID Markus Jägle (markus.jaegle@trivadis.com) Art der Info Technische Background Info (April 2002) Quelle Aus dem Oracle9i Data Warehousing Guide und den Kursen New Features Oracle9i
MehrHTW Dresden Fakultät Informatik/Mathematik Prof. Dr.-Ing. A. Toll. Handbuch MDX. Arbeitsmaterial zur Lehrveranstaltung Business Intelligence
HTW Dresden Fakultät Informatik/Mathematik Prof. Dr.-Ing. A. Toll Handbuch MDX Arbeitsmaterial zur Lehrveranstaltung Business Intelligence 3. überarbeitete Fassung, Dezember 2015 Impressum Titel Handbuch
Mehr12 BG EDV Access / Inf-SQL1 Theodor-Heuss-Schule Wetzlar
Abfragen aus einer Tabelle mit Hilfe der Datenbank-Sprache SQL SQL (Structured Query Language) ist eine Computersprache zum Speichern, Bearbeiten und Abfragen von Daten in relationalen Datenbanken. Eine
MehrDaten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL
Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell Jetzt: -> Formulierung in DDL Daten-Definitionssprache (DDL) DDL ist Teil von SQL (Structured
MehrFortgeschrittene OLAP Analysemodelle
Fortgeschrittene OLAP Analysemodelle Jens Kübler Imperfektion und erweiterte Konzepte im Data Warehousing 2 Grundlagen - Datenanalyse Systemmodell Datenmodell Eingaben System Schätzer Datentypen Datenoperationen
MehrSQL: Abfragen für einzelne Tabellen
Musterlösungen zu LOTS SQL: Abfragen für einzelne Tabellen Die Aufgaben lösen Sie mit dem SQL-Training-Tool LOTS der Universität Leipzig: http://lots.uni-leipzig.de:8080/sql-training/ Wir betrachten für
MehrOnline Kurse Modulbeschreibungen
Online Kurse Modulbeschreibungen K0100 SQL Basics M0101 DB Theorie Dieses Modul führt in die Thematik von Datenbanken und deren grundlegenden Begriffen und Konzepten ein. Es werden Fragen beantwortet,
MehrAbfragen (Queries, Subqueries)
Abfragen (Queries, Subqueries) Grundstruktur einer SQL-Abfrage (reine Projektion) SELECT [DISTINCT] {* Spaltenname [[AS] Aliasname ] Ausdruck} * ; Beispiele 1. Auswahl aller Spalten SELECT * ; 2. Auswahl
MehrSQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis.
SQL Lehr- und Forschungseinheit Datenbanken und Informationssysteme Ziele Grundlagen von SQL Beziehung zur relationalen Algebra SELECT, FROM, WHERE Joins ORDER BY Aggregatfunktionen Lehr- und Forschungseinheit
Mehr3 Query Language (QL) Einfachste Abfrage Ordnen Gruppieren... 7
1 Data Definition Language (DDL)... 2 1.1 Tabellen erstellen... 2 1.1.1 Datentyp...... 2 1.1.2 Zusätze.... 2 1.2 Tabellen löschen... 2 1.3 Tabellen ändern (Spalten hinzufügen)... 2 1.4 Tabellen ändern
MehrPRG2 Folien Zicari Teil 5. Einführung in Datenbanken SS 2007
PRG2 Folien Zicari Teil 5 Einführung in Datenbanken SS 2007 Prof. Dott. Ing. Roberto Zicari Johann Wolfgang Goethe-Universität Frankfurt am Main PRG2 V-1 Fachbereich Informatik und Mathematik SQL SQL =
MehrKapitel 3: Indices und Sichten
Kapitel 3: Indices und Sichten Data Warehousing und Mining - 1 Gliederung im folgenden: Klassifikation Aggregationsfunktionen, Materialisierte Sichten Grundsätzliche Alternativen beim Updaten materialisierter
MehrSeminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle.
Seminar 2 SQL - DML(Data Manipulation Language) und DDL(Data Definition Language) Befehle. DML Befehle Aggregatfunktionen - werden auf eine Menge von Tupeln angewendet - Verdichtung einzelner Tupeln yu
MehrSAP BO Web Intelligence auf SQL Server [A4] Üetliberg,
SAP BO Web Intelligence auf SQL Server [A4] Üetliberg, 12.09.2017 www.boak.ch AGENDA Einführung Auswahl des Reporting Werkzeugs Universum & WebI Dokumente erstellen Live Demo Nebenprodukte Vertiefende
MehrDatenbanksysteme Kapitel 5: SQL - Grundlagen
Datenbanksysteme Kapitel 5: SQL - Grundlagen Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Prof. Peter Dr. Chamoni Peter
Mehrinsert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle
Einführung in SQL insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle Quelle Wikipedia, 3.9.2015 SQL zur Kommunikation mit dem DBMS SQL ist
MehrDatenbanksysteme Kapitel 5: SQL Grundlagen Teil 1
Datenbanksysteme Kapitel 5: SQL Grundlagen Teil 1 Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Prof. Dr. Dr. Peter Peter
MehrModellierung in SAP HANA Teil 2
Modellierung in SAP HANA Teil 2 Autor Julissa Cusi Datum der Veröffentlichung 01.06.2018 Die Verwendung ist nur für den persönlichen Gebrauch und nur im Rahmen der Nutzung der Bissantz-Softwareprodukte
MehrSQL-Sprachvielfalt. Peter Willadt (Ludwig-Erhard-Schule) SQL-Befehle / 47
SQL-Sprachvielfalt DML Data Manipulation Language: Daten einfügen, ändern und löschen DQL Data Query Language: Daten abfragen DDL Data Definition Language: Tabellen und andere Strukturelemente erzeugen,
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
MehrInformatik II Vorlesung am D-BAUG der ETH Zürich. Vorlesung 12, 2017 Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen
Informatik II Vorlesung am D-BAUG der ETH Zürich Vorlesung 12, 2017 Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen Datendefinition (DDL) in SQL Anlegen einer Tabelle create
MehrSQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)
SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans schmidt@cs.ro
MehrAnwendungsentwicklung Datenbanken SQL. Stefan Goebel
Anwendungsentwicklung Datenbanken SQL Stefan Goebel SQL Structured Query Language strukturierte Abfragesprache von ANSI und ISO standardisiert deklarativ bedeutet was statt wie SQL beschreibt, welche Daten
MehrSchlüssel. Definition: Ein Schlüssel (key) einer Relation r(r) ist eine Til Teilmenge K von R, so dass für je zwei verschiedene Tupeln t 1
Schlüssel Definition: Ein Schlüssel (key) einer Relation r(r) ist eine Til Teilmenge K von R, so dass für je zwei verschiedene Tupeln t 1 und t 2 r gilt: - t 1 (K) t 2 (K) und - keine echte Teilmenge K'
MehrSQL. SQL SELECT Anweisung SQL-SELECT SQL-SELECT
SQL SQL SELECT Anweisung Mit der SQL SELECT-Anweisung werden Datenwerte aus einer oder mehreren Tabellen einer Datenbank ausgewählt. Das Ergebnis der Auswahl ist erneut eine Tabelle, die sich dynamisch
MehrKapitel 6. Datenmalipulation (DML) d. h. insert, update, delete, select im Relationenmodell (in Oracle)
Kapitel 6 Datenmalipulation (DML) d. h. insert, update, delete, select im Relationenmodell (in Oracle) 1 Datenmanipulationssprache (DML) SQL Einfügen: Insert-Statement Ändern: Update-Statement Löschen:
MehrAggregatfunktionen in SQL
Aggregatfunktionen in SQL Michael Dienert 14. April 2008 1 Definition von Aggregatfunktionen Ihren Namen haben die Aggregatfunktionen vom englischen Verb to aggregate, was auf deutsch anhäufen, vereinigen,
MehrInformatik II Vorlesung am D-BAUG der ETH Zürich. Vorlesung 12, Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen
Informatik II Vorlesung am D-BAUG der ETH Zürich Vorlesung 12, 30.5.2016 Datenbanksysteme: Datendefinition in SQL, Kompliziertere Datenbankabfragen Datendefinition (DDL) in SQL Datentypen character (n),
MehrWS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)
Vorlesung #3 SQL (Teil 1) Fahrplan Wiederholung/Zusammenfassung Relationales Modell Relationale Algebra Relationenkalkül Geschichte der Sprache SQL SQL DDL (CREATE TABLE...) SQL DML (INSERT, UPDATE, DELETE)
MehrACCESS SQL ACCESS SQL
ACCESS SQL Datenbankabfragen mit der Query-Language ACCESS SQL Datenbankpraxis mit Access 34 Was ist SQL Structured Query Language Bestehend aus Datendefinitionssprache (DDL) Datenmanipulationssprache
MehrDatenbank und Tabelle mit SQL erstellen
Datenbank und Tabelle mit SQL erstellen 1) Übung stat Mit dem folgenden Befehlen legt man die Datenbank stat an und in dieser die Tabelle data1 : CREATE DATABASE stat; USE stat; CREATE TABLE data1 ( `id`
MehrSQL. Datenmanipulation. Datenmanipulationssprache. Ein neues Tupel hinzufügen. Das INSERT Statement
SQL Datenmanipulation Datenmanipulationssprache Ein DML Statement wird ausgeführt wenn: neue Tupel eingefügt werden existierende Tupel geändert werden existierende Tupel aus der Tabelle gelöscht werden
Mehr1 Vorstellung Kursbeispiel
1 Vorstellung Kursbeispiel Dieses Kapitel basiert auf den datenbanktheoretischen Grundlagen des Kapitel 1 und stellt die im Kurs verwendete Testdatenbank vor. Weiterhin soll grob skizziert werden, wie
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.
MehrInhaltsverzeichnis. Bernd Müller, Harald Wehr. Java Persistence API 2. Hibernate, EclipseLink, OpenJPA und Erweiterungen ISBN:
Inhaltsverzeichnis Bernd Müller, Harald Wehr Java Persistence API 2 Hibernate, EclipseLink, OpenJPA und Erweiterungen ISBN: 978-3-446-42693-1 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42693-1
MehrXML Datenbanken Quickstart für die Anfragesprachen XPath und XQuery
XML Datenbanken Quickstart für die Anfragesprachen XPath und XQuery Harald Lang 3. Juli 2014 XQuery (2) XPath (1) (1) Pfadausdrücke mit XPath Adressieren von Elementen innerhalb eines hierarchischen XML-Dokuments
MehrVorlesung Datenbanken I Zwischenklausur
Prof. Dr. Stefan Brass 12. Dezember 2003 Institut für Informatik MLU Halle-Wittenberg Vorlesung Datenbanken I Zwischenklausur Name: Matrikelnummer: Studiengang: Aufgabe Punkte Max. Punkte Zeit 1 (Integritätsbedingungen)
MehrUniversität Augsburg, Institut für Informatik WS 2008/2009 Prof. Dr. W. Kießling 23. Nov Dr. A. Huhn, M. Endres, T. Preisinger Lösungsblatt 5
Universität Augsburg, Institut für Informatik WS 2008/2009 Prof. Dr. W. Kießling 23. Nov. 2007 Dr. A. Huhn, M. Endres, T. Preisinger Lösungsblatt 5 Aufgabe 1: SQL-Queries Datenbanksysteme I a) Geben Sie
MehrRückblick. SQL bietet viele Möglichkeiten zur Anfrageformulierung
Rückblick SQL bietet viele Möglichkeiten zur Anfrageformulierung mathematische Funktionen (z.b. ABS(A) und SIGN(A)) Aggregatfunktionen (z.b. MIN(A) und SUM(A)) Boole sche Operatoren (AND, OR, EXCEPT) Verknüpfungen
MehrKapitel 5: Vom relationalen zum multidimensionalen Datenmodell
Data Warehousing, Gliederung Kapitel 5: Vom relationalen zum multidimensionalen Datenmodell Dimensionen und Measures Schematypen für Data Warehousing Groupy und Data Cubes Operatoren für den Data Cube
MehrGrundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich
Grundlagen von SQL Informatik 2, FS18 Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich Markus Dahinden 13.05.18 1 Grundlagen von SQL (Structured Query Language)
Mehr5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp
5/14/18 Grundlagen von SQL (Structured Query Language) Datenbanksprache Befehle Datenbanken und Tabellen erstellen/verändern Daten manipulieren (eingeben, ändern, löschen) Datenbank durchsuchen (Queries
MehrOperationen auf Relationen
Existierende relationale Datenbanken Beispiele von relationalen DB-Systemen: DB2, SQL (v. IBM), ORACLE, INGRES, INFORMIX, SYBASE, ACCESS u.v.a.m. Die dominierende Query-, DB-Language: SQL (Structured Query
MehrDOAG HC ApEx Workshop. OPITZ CONSULTING GmbH 2009 Seite 1
OPITZ CONSULTING GmbH 2009 Seite 1 Ein Kurzeinstieg in Oracle Application Express Enno Schulte, Werksstudent OPITZ CONSULTING Gummersbach GmbH Fachhochschule Gummersbach, 07.10.2009 OPITZ CONSULTING GmbH
MehrDeveloping SQL Data Models MOC 20768
Developing SQL Data Models MOC 20768 In diesem Kurs lernen Sie das Implementieren von multidimensionale Datenbanken mithilfe der SQL Server Analysis Services (SSAS) und durch das Erstellen von tabellarische
MehrWebbasierte Informationssysteme
SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn - SS 2004 - Prof. Dr. Stefan Böttcher Folie 1 Was ist eine relationale Datenbank? Menge von Relationen (=Tabellen) und Constraints (=Integritätsbedingungen)
MehrData Cubes PG Wissensmangement Seminarphase
PG 402 - Wissensmangement Seminarphase 23.10.2001-25.10.2001 Hanna Köpcke Lehrstuhl für Künstliche Intelligenz Universität Dortmund Übersicht 1. Einführung 2. Aggregation in SQL, GROUP BY 3. Probleme mit
Mehr18. Hinweise zur schriftlichen Abiturprüfung 2021 im Fach Informatik
18. Hinweise zur schriftlichen Abiturprüfung 2021 im Fach Informatik A. Fachbezogene Hinweise Grundlage für die schriftliche Abiturprüfung 2021 in Niedersachsen sind die Einheitlichen Prüfungsanforderungen
MehrBerechnung von Kennzahlen mit der SQL Model Clause
Berechnung von Kennzahlen mit der Thomas Mauch 12.07.2018 DOAG BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN 1 AGENDA 1. Einführung 2. Syntax 3. Performance
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. Übung zur Vorlesung Einsatz und Realisierung von Datenbanksystemen im SoSe18 Alexander van Renen, Maximilian
MehrThemenblock: Erstellung eines Cube
Themenblock: Erstellung eines Cube Praktikum: Data Warehousing und Data Mining Einführung relationale Datenbanken Problem Verwaltung großer Mengen von Daten Idee Speicherung der Daten in Form von Tabellen
MehrDatenzugriffskomponente mit JPA 2.1
Datenzugriffskomponente mit JPA 2.1 (Grundlagen der Java Persistence Architecture) Vladislav Faerman Gliederung Einführung Konfiguration Objekt-Relationales Mapping (ORM) mit JPA Das zentrale Konzept der
MehrDatenbanken Unit 9: OLAP, OLTP, Data Warehouse Ranking Algorithmen
Datenbanken Unit 9: OLAP, OLTP, Data Warehouse Ranking Algorithmen 28. V. 2018 Outline 1 Organisatorisches 2 OLTP, OLAP, SAP, and Data Warehouse OLTP and OLAP SAP 3 Ranking 4 SQL Organisatorisches Ergebnisse
MehrDimensionen, Measures
... Operationen und peicherung Multi-dimensionaler Daten Aggregate um RED WHITE BLUE Group By (with total) By Color um Cross Tab Chevy Ford By Color RED WHITE BLUE By Make um By Make & Year By Year FORD
MehrSELECT dient dazu, aus einer vorhandenen Datenbank bestimmte Spalten und Zeilen auszugeben es handelt sich also um eine Auswahlabfrage.
SELECT-FROM SELECT dient dazu, aus einer vorhandenen Datenbank bestimmte Spalten und Zeilen auszugeben es handelt sich also um eine Auswahlabfrage. Inhaltsverzeichnis 1 Der grundlegende Aufbau 2 Doppelte
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrZellenbasierende Berechnungen und Spreadsheets in Oracle 10g
Zellenbasierende Berechnungen und Spreadsheets in Oracle 10g Marc Bastien ORACLE Deutschland GmbH Geschäftstelle Hamburg Schlüsselworte OLAP, Spreadsheet, Model, Cell-Based-Access, Inter-Row Calculations
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
MehrMySQL-Befehle. In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben.
MySQL-Befehle 1. Einleitung In diesem Tutorial möchte ich eine kurze Übersicht der wichtigsten Befehle von MySQL geben. 2. Arbeiten mit Datenbanken 2.1 Datenbank anlegen Eine Datenbank kann man wie folgt
Mehrmit konventionellen Datenbanksystemen konventionellen Datenbanksystemen
Stream-Verwaltung mit konventionellen Datenbanksystemen Christian Rensch.06.005 Seminar Data Streams Thema Verwaltung von Datenströmen in konventionellen Datenbanksystemen optimiert auf Daten geringer
MehrSQL: Weitere Funktionen
Vergleich auf Zeichenketten SQL: Weitere Funktionen LIKE ist ein Operator mit dem in Zeichenketten andere Zeichenketten gesucht werden; zwei reservierte Zeichen mit besonderer Bedeutung sind hier % (manchmal
MehrÜbung Datenbanken in der Praxis. Anfragen an Datenbanken mit SQL
Anfragen an Datenbanken mit SQL Folie 28 Syntax einer Anfrage SFW-Anfrage (Select-From-Where-Anfrage) SELECT Projektion π FROM Kart. Produkt WHERE Selektion
MehrErzeugung und Veränderung von Tabellen
Datenbanken - Objekte Erzeugung und Veränderung von Tabellen Objekt Tabelle View Sequence Index Synonym Basiseinheit zum Speichern; besteht aus Zeilen und Spalten; Logische Repräsentation; kann Teilmengen
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrStrukturierte Spezifikation: Anreicherung um nichtrekursive und rekursive Definitionen
Strukturierte Spezifikation: Anreicherung um nichtrekursive und rekursive Definitionen 13. Mai 2013 G. Schellhorn, D. Haneberg: Formale Methoden im Software Engineering 128 / 290 Strukturierte Spezifikationen
MehrWelche Kunden haben die gleiche Ware bestellt? select distinct a1.name, a2.name from Auftrag a1, Auftrag a2 where a1.ware = a2.ware.
*HVFKDFKWHOWH$QIUDJHQ In einer SQL-Anweisung können in der where-klausel, from-klausel, select-klausel wieder SQL-Anweisungen auftreten. Man spricht dann auch von einer geschachtelten Anfrage oder Unteranfrage.
MehrObjektorientierte Datenbanken
OODB 8 Slide 1 Objektorientierte Datenbanken Vorlesung 8 Sebastian Iwanowski FH Wedel OODB 8 Slide 2 Offene Fragen vom letzten Mal: Kann man in einer JDOQL-Anfrage Elemente herausfiltern, deren Attribute
MehrVorlesung Wissensentdeckung in Datenbanken
Gliederung Vorlesung Wissensentdeckung in Datenbanken Data Cube Katharina Morik, Claus Weihs 14.07.2009 1 Einführung 2 Aggregation in SQL, GROUP BY 3 Probleme mit GROUP BY 4 Der Cube-Operator 5 Implementierung
MehrDatenbanken zur Entscheidungsunterstützung - Data Warehousing. Prof. Dr. T. Kudraß 1
Datenbanken zur Entscheidungsunterstützung - Data Warehousing Prof. Dr. T. Kudraß 1 Einführung Zunehmender Bedarf nach Analyse aktueller und historischer Daten Identifizierung interessanter Patterns Entscheidungsfindung
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
MehrEinführung relationale Datenbanken. Themenblock: Erstellung eines Cube. Schlüssel. Relationenmodell Relationenname Attribut. Problem.
Themenblock: Erstellung eines Cube Einführung relationale Datenbanken Problem Verwaltung großer Mengen von Daten Praktikum: Data Warehousing und Data Mining Idee Speicherung der Daten in Form von Tabellen
MehrÜbersicht der wichtigsten MySQL-Befehle
Übersicht der wichtigsten MySQL-Befehle 1. Arbeiten mit Datenbanken 1.1 Datenbank anlegen Eine Datenbank kann man wie folgt erstellen. CREATE DATABASE db_namen; 1.2 Existierende Datenbanken anzeigen Mit
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
MehrQuery-Manager Kurzanleitung Inhalt. Query-Manager. Kurzanleitung
Query-Manager Kurzanleitung Inhalt Query-Manager Kurzanleitung 1 Inhalt 1. Selektion über Sachdaten... 3 2. Einfache Abfrage... 3 2.1. Objektklasse und Tabelle auswählen... 3 2.2. Attributeigenschaften
MehrDatenbanken Grundlagen und Design
Frank Geisler Datenbanken Grundlagen und Design 3., aktualisierte und erweiterte Auflage mitp Vorwort 15 Teil I Grundlagen 19 i Einführung in das Thema Datenbanken 21 i.i Warum ist Datenbankdesign wichtig?
Mehr5.8 Bibliotheken für PostgreSQL
5.8 Bibliotheken für PostgreSQL Haskell/WASH: Modul Dbconnect PHP: pqsql-funktionen Java/JSP: JDBC Perl: DBI database interface modul Vorläufige Version 80 c 2004 Peter Thiemann, Matthias Neubauer 5.9
MehrAnfragen gegen das DataWarehouse
Anfragen gegen das DataWarehouse Sebastian Kuhs Seminar Data Warehousing und analytische Datenbanken Gliederung 1. Benutzergruppen 2. interaktives OLAP 3. MDX 4. XML-Analysis 5.Produkte 1. Benutzergruppen
MehrDatenbanken. Heute dreht sich alles um SQL-Abfragen mit JOINS
Datenbanken Heute dreht sich alles um SQL-Abfragen mit JOINS Bevor du loslegst...... setze bitte die Datenbank zurück, indem du auf Restore Database klickst. Dann werden alle Änderungen, die du bisher
MehrKlassifikationsBrowser
2015.05 2016.06 2017.06 2016-05-26 by Kathleen Neumann Funktionsweise des KlassifikationsBrowser Table of contents 1 Klassifikationsbrowser...2 1.1 Konfiguration...2 1.2 Beispiel für Browsen nach Einrichtung...
MehrOracle Indexing Primer
Oracle Indexing Primer Data Warehousing and Data Mining Patrick Schäfer Berlin, 18. Dezember 2017 patrick.schaefer@hu-berlin.de Vorlesung: Übung: https://hu.berlin/vl_dwhdm17 https://hu.berlin/ue_dwhdm17
MehrMicrosoft Access Abfragen: Informationen anzeigen und sortieren
Microsoft Access Abfragen: Informationen anzeigen und sortieren Alle Kunden Die Namen der Mitarbeiter und deren E-Mail-Adresse Bestellungen, nach dem Datum sortiert Anja Aue 16.11.16 Abfragen Zusammenstellung
MehrStructured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken
Rückblick Structured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken Data Definition Language zur Schemadefinition (z.b. CREATE TABLE zum Anlegen von Tabellen) Data
MehrSQL Data Manipulation Language (DML) und Query Language (QL)
Innsbruck Information System University of Innsbruck School of Management Information Systems Universitätsstraße 15 6020 Innsbruck SQL Data Manipulation Language (DML) und Query Language (QL) Universität
MehrTeil II: Architektur eines Data-Warehouse-Systems... 57
O:/Wiley/Reihe_Dummies/9783527714476_Gerken/3d/ftoc.3d from 08.08.2018 14:02:02 Auf einen Blick Einleitung... 19 Teil I: Was ist ein Data Warehouse?... 25 Kapitel 1: Ein Beispiel zur Einführung..... 27
Mehr