De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

1 SQL Model Clausule 28 november 2006 Rob van Wijk.

Verwante presentaties


Presentatie over: "1 SQL Model Clausule 28 november 2006 Rob van Wijk."— Transcript van de presentatie:

1 1 SQL Model Clausule 28 november 2006 Rob van Wijk

2 2 Onderwerpen Introductie Syntax Pauze Voorbeelden op internet Prestaties Alternatieven Conclusie

3 3 Introductie Uitbreiding op SQL’s SELECT-commando Behandel data als multidimensionale arrays Complexe berekeningen over rijen heen Syntax die lijkt op logisch programmeren (Prolog) Voorkom exporteren naar externe applicaties zoals Excel Geen meerdere uit de pas lopende kopieën op verschillende PC’s meer

4 4 Syntax: het basisconcept verdeel de kolommen in drie groepen: PARTITION, DIMENSION en MEASURES Iedere partitie is een apart array (vergelijk partitie bij analytische functie), partitie is optioneel De dimensies identificeren iedere cel in iedere partitie, bijvoorbeeld: sal[7839] = 3000; 7839 is de dimensie De meetwaarden zijn analoog aan de feitentabellen in een gegevenspakhuis: typisch numerieke kolommen, bijvoorbeeld: sal[7839] = 3000; sal is meetwaarde De regels (RULES) vertellen hoe de data gemanipuleerd moet worden

5 5 Syntax: eenvoudige voorbeelden Een model clausule die niets doet Toevoegen van een extra rij aan het resultaat RETURN UPDATED ROWS Verschil tussen MEASURES en PARTITION mc1.sql mc2.sql mc3.sql mc4.sql

6 6 Concept in een plaatje

7 7 Syntax: meer voorbeelden ANY CV() FOR Itereren Referentiemodellen Verschil NULL en NAV IS PRESENT, PRESENTV en PRESENTNNV mc5.sql mc6.sql mc7.sql mc8.sql mc9.sql mc10.sql mc11.sql

8 8 Syntax: het complete plaatje MODEL [ ] [MAIN ] [PARTITION BY ( )] DIMENSION BY ( ) MEASURES ( ) [ ] [RULES] (,,.., ) ::= ::= RETURN {ALL|UPDATED} ROWS ::= [IGNORE NAV | [KEEP NAV] [UNIQUE DIMENSION | UNIQUE SINGLE REFERENCE] ::= [UPDATE | UPSERT | UPSERT ALL] [AUTOMATIC ORDER | SEQUENTIAL ORDER] [ITERATE ( ) [UNTIL ]] ::= REFERENCE ON ON ( ) DIMENSION BY ( ) MEASURES ( )

9 9 Voorbeelden op internet Draaitabel (Lucas Jellema) Financieel plaatje (Mark Rittman) Fibonacci (Anthony Molinaro) Nummergenerator (Ant/AskTom) OTN-vraag mc12.sql mc13.sql mc14.sql mc15.sql mc16.sql

10 10 Prestaties Interne hash-tabellen Explain plan MODEL {ORDERED [FAST] | ACYCLIC [FAST] | CYCLIC} WINDOW (IN MODEL) SORT mc17.sql

11 11 Alternatieven Vorige voorbeelden mc2a.sql t/m mc16a.sql

12 12 Conclusies Hoge leercurve Belasting van CPU en geheugen, niet van de schijven Er is ontzettend veel meer mogelijk in SQL, dankzij de modelclausule Geschikt voor vooruitberekeningen / budgetteringen SQL is zonder de modelclausule vaak al goed genoeg voor de dagelijkse praktijk


Download ppt "1 SQL Model Clausule 28 november 2006 Rob van Wijk."

Verwante presentaties


Ads door Google