SuperUsers billede
Kursus
SU-245

SQL og Dataanalyse

Kurset giver viden og færdigheder til at bruge avanceret SQL-kode til at returnere statistiske data – til fx rapporter eller befolkning af Data Warehouses.

 

Beskrivelse

Dette er et avanceret SQL-kursus !

Kursets indhold ligger inden for SQL-standarden og kan derfor benyttes i f.eks. Oracle, IBM DB2, Microsoft SQL Server, MySQL, MariaDB, PostgreSQL og Teradata.

Kurset udvider kursistens repertoire af avancerede SQL-teknikker, så han/hun får flere "tangenter at spille på" og derved kan være mere kreativ i omsætningen af strategien til SQL-kode! Dette er forudsætningen for at kunne performance tune SQL-statements.

Kurset starter med klassiske mængdeoperationer -- hvor der fokuseres på strategier for løsning vha. korrelerede subqueries. Gode, gedigne teknikker, som ligger i kernen af tankegangen i SQL.

Dernæst følger SQL:1999-udvidelserne af GROUP BY med GROUPING SETS, CUBE og ROLLUP. Disse udvidelser retter sig mod statistiske rapporter og Data Warehousing. Korrekt anvendt kan dette give bedre performance.

Correlated DELETE og UPDATE kan benyttes til ændringer af data i én tabel, med udgangspunkt i data fra en anden tabel. Kurset tager udgangspunkt i en Upsert -- for dernæst at introducere den vigtige MERGE-kommando, som kom i SQL:2003 og blev udvidet i SQL:2008-standarden. Benyttes ofte i Data Warehousing.

Kurset kommer kort omkring rekursive CTE -- defineret til hierarkiske forespørgsler. De finder også anvendelse i at kunne erstatte en iterativ forespørgsel ( f.eks. CURSOR eller WHILE loop ). Derved tilbydes performance gennem et view eller inline table-valued function.

Window functions ( Analytic function eller OLAP function ) blev introduceret i SQL:1999-standarden og er en radikal anderledes måde at tænke mængder på. De løser en stribe klassiske problemstillinger på en elegant og let læselig måde -- tilmed ofte med god performance.

Window functions gennemgås detaljeret med mange øvelser og eksempler og er hovedemnet på kurset.

Kurset viser måder at returnere simple statistiske deskriptorer -- f.eks. median, typetal og gennemsnit.

Til sidst introduceres SQL-forespørgsler på intervaller samt betingelsen for overlappende intervaller. Resultatsæt fra beregninger på intervaller, herunder overlappende intervaller, intervaller tilskrevet en værdi. Dette indgår bl.a. i økonomisk SQL.

Videoteaser

Certificeringspakker

Listepris 46.200 DKK
Din pris 32.800 DKK
(Eksl. moms)

Moduloversigt

  • Modul 1
    Mængdeoperationer
    • SQL hviler på mængdelære. Blandt SQL-sprogets berømte attraktioner hører dets elegante håndtering af mængdeoperationer, som kan løse avancerede rapportønsker. Pointen er, at genkendes mængdeoperationen ud fra rapportønsket, har man en god retningsgiver for en mulig strategi til at skrive en passende SQL-kode. På kurset præsenteres klassiske mængdeoperationer -- både grafisk i Venn-diagrammer samt smukke, korrelerede HAVING- og/eller EXISTS-konstruktioner til at løse dem. SQL er bygget til at kunne gøre dette med god performance.

      Disjunkte mængder

      • Tom fællesmængde.
      • Hvilke købende Kunder X har ikke købt nogen af de Varer, som Kunde A har købt ?
      • Hvilke Kunder X har kun købt noget i de år, som Kunde A ikke har købt i ?


      Supermængde

      • Hvilke Kunder X har mindst købt de samme Varer som Kunde A ?


      Delmængde

      • Hvilke Kunder X har købt blandt Varer købt af Kunde A -- hvor Kunde A har købt alle Varer, som Kunde X har købt ?


      Identiske mængder

      • Hvilke Kunder X har købt præcis de samme Varer som Kunde A ?
  • Modul 2
    Grupperede data
    • SQL:1999-standardens udvidelse af GROUP BY med GROUPING SETS, CUBE og ROLLUP. Implementeret til håndtering af data i statistiske rapporter og Data Warehouses. Et stærkt supplement i rapportering, idet man specifikt udvælger niveauer at gruppere data i. Kan derfor give en performance-gevinst fremfor at gruppere på alle niveauer og samle aggregater senere.

  • Modul 3
    MERGE-kommandoen
    • Defineret i SQL:2003 og SQL:2008-standarden og svarer til en upsert ( update + insert ). Merge indgår ofte i befolkning af tabeller i Data Warehouses. Kurset præsenterer mulighederne, herunder nogle af udvidelserne til standarden, som enkelte database-producenter har tilføjet.

      Med udgangspunkt i upsert vha. correlated UPDATE hhv. INSERT præsenteres merge-kommandoen og dens anvendelser.

  • Modul 4
    Rekursive CTE
    • CTE blev introduceret i SQL:1999. Herunder valgte man at placere rekursive forespørgsler i CTE syntaxen. Kurset introducerer kort disse konstruktioner, fordi de kan anvendes i views og inline table-valued functions og derved give performance! Sammenligning med Oracle syntax

  • Modul 5
    Window-funktioner
    • Definition. Hvad er pointen? Hvori består ”vinduet”? Gennemgås detaljeret med fokus på opbygning samt relation til strategier for rapportering. Mange eksempler.

      Typer af Window Functions:

      • Aggregate
      • Ranking
      • Distribution
      • Offset
      • Hver af disse typer præsenteres med eksempler på anvendelse.


      OVER-klausulen og dens elementer:

      • Partitioning
      • Ordering
      • Framing
      • Hvert af disse elementer gennemgås grundigt med eksempler på anvendelse i forespørgsler.


      Sekvenser af key values:

      • Tildele unikke, sekventielle værdier, f.eks. surrogate keys i et Data Warehouse.
      • Slette duplikat-rækker
      • Top-N pr. gruppering -- f.eks. angiv de tre seneste afgivne ordrer pr. kunde.


      Window Functions til at returnere nogle statistiske deskriptorer:

      • Typetal
      • Median


      Løbende aggregater -- ”running values”.

      • Angiv løbende 7-døgns gennemsnitlige indbetaling pr. kunde.
  • Modul 6
    Ranking functions
    • ROW_NUMBER() , RANK() og DENSE_RANK()

      • Der fokuseres specielt på denne type Window Function -- herunder hvilke typer rapportønsker eller Data Warehouse-forespørgsler den kan løse.
  • Modul 7
    Intervaller
    • Intervaller optræder flere steder:

      • Et lån har en given restgæld og rente i et givet tidsrum.
      • En medarbejder udlånes til et projekt i et givet tidsrum.
      • En bil har en leasingperiode.
      • En mobilsamtale har en varighed.


      Overlappende intervaller

      • Maximale antal overlappende intervaller.
      • Hvad var det maximale antal samtidige biler, der var udlejet.
      • Hvis et interval er tilskrevet en værdi -- hvad var det maximale udlån?


      Huller i intervaller

      • Hvilke intervaller af løbenumre er ikke i brug?
      • Angiv sammenhængende intervaller af løbenumre, som er i brug.

Instruktøren var meget behagelig og øvelserne var enormt gode. Blev virkelig meget klogere omkring emnerne, kurset handlede om.

Derudover virkelig gode, rolige og grønne omgivelser med god forplejning - specielt god mad. Her vil jeg gerne tage mine kurser næste gang igen.

— Arif Mikkelsen Yüce
Københavns Kommune

Jeg kan ikke give andet end 5 stjerner for det hele. Enten er I helt i særklasse, eller også er jeg bare kommet de forkerte kursussteder tidligere. Fantastisk sted og atmosfære.... når først man har lært at finde rundt :-)

— Mikael Ejberg Pedersen
Cobham SATCOM

Lækker mad, hyggelige lokaler, god struktur og stemning. Kommer igen når jeg kan.

— Ea Stenberg
Oticon A/S

Kursusstedet er så indbydende og velkomne, at det har været en fornøjelse at være her. Rent, pænt og fuld af charme. Jeg deltog på et kursus, hvor alle enkelte dele gik op i en højere enhed, som knap kan beskrives.

— Bo Peter Jensen
Kyndryl Danmark ApS

Jeg fik meget ud af kurset, det har åbnet øjnene for muligheder, jeg ikke var klar over eksisterede. Jeg er sikker på det ikke er sidste gang, vi er i kontakt med SuperUsers.

— Christian Larsen
Siemens Gamesa Renewable Energy A/S

Nok det bedste kursus jeg har været på og den bedste instruktør jeg har haft!! Rigtig god dybde og uddybende forklaringer, og derudover fantastisk mad!!!

— Michael Hasløv
Lån & Spar Bank

Jeg havde ikke i min vildeste fantasi troet, at et kursussted kunne være så flot. Ved ikke om det er rigtigt, men jeg har en idé om, at omgivelserne smitter af på dem som arbejder her, så alle virker utrolig glade.

Der er en rigtig god stemning. Lige fra hende som sidder i receptionen, til dem som arbejder i køkkenet.

— Jannik Berg Møller
Metro Service

Underviseren har i meget høj grad tilpasset kurset til mit niveau og været fleksibel. Jeg havde meget høje forventninger, og de blev overgået.

Stor præcision, gode øvelser, godt tempo, god stemning og max på læring.

— Luka Dalum
Semler

Absolut det bedste kursus jeg har deltaget i!

— Esben Salling
JN Data A/S

Det var en ren fornøjelse at være på kursus hos SuperUsers. Den uge vi har været på kursus var pengene værd og gør, at vi nu kan spare mange konsulenttimer. Det er altid rart at have viden in-house.

Der er en afslappende atmosfære i kursuslokalet, skønne omgivelser i selve bygningen samt dygtige instruktører, som gør det rigtig godt.

Jeg kom i gang med at bruge al den viden, jeg sugede til mig på kurset næsten med de samme, og nu er vi i fuld gang med udvikling af vores fremtidige cloud løsning.

Der er ingen tvivl om, hvem skal vi henvende os, hvis der er behov for andre kurser.

— Maksym Bilyk
KVM A/S

Det er første gang jeg har været hos SuperUsers. Dette har været en rigtig god oplevelse. Instruktøren virker til at være meget erfaren og kompetent.

Instruktørens stærke tekniske baggrund gør oplevelsen og uddybelsen af spørgsmål til en god oplevelse.

— Thomas Gram
Nic. Christiansen Gruppen A/S

Rigtig fint kurussted i fine omgivelser, som sætter gode omgivelser til fordybning. Instruktøren fremstår velforberedt med stor viden omkring de relevante emner.

Instruktøren udviste også god evne til at svare på eventuelle spørgsmål, som måtte opstå undervejs i forløbet.

— Simon Schmidt Eriksen
Norlys

Jeg kommer igen næste gang jeg skal på kursus, det er et dejligt sted, fantastisk god mad og instruktøren har stor viden og deler gerne ud af den!

— Jan Christiansen
TV2 Danmark A/S

Den tekniske dybde på kurset var virkelig god, instruktøren havde meget dybere viden, end pensum nødvendigvis kræver.

Man kunne smide diverse curveballs efter instruktøren, og han havde styr på det hele - han gjorde desuden indholdet spændende.

— Nicolai Bæklund
Danish Crown

Så fik vi gennemført kurser i Microsoft 365 for samlet 5 personer her i afdelingen. Alle siger samstemmende, at det har været et fremragende kursus med en dygtig underviser og kommunkator, som kunne drøfte og informere på rette niveau, men samtidig med effektivitet og humor.

Det har været en rigtig god oplevelse.

— Henrik Dyrhøj
Nyborg Kommune

Der er fred og ro på SuperUsers landsted. God atmosfære og forplejning. Der er kigget til et sundhedsaspekt mht til mad og kage så det ikke tager fuldstændig overhånd.

Instruktøren er velvidende på emnerne og perspektivere gerne bredt til andre relevante områder. Det er givende, at dette også er muligt og giver en selv tanker til videre fordybelse.

Derudover var instruktøren engageret og underholdende at have til at præsenterere indhold for sig.

— Kenneth Middelboe Carlson
Svend Hoyer A/S

Det var som altid en go' oplevelse, og man lærer en masse på kort tid af nogle meget dygtige undervisere.

Jeg arbejder i Azure stort set hver dag, og begge kurser har været rigtige gode til at hjælpe mig med at forstå Azure bedre.

— Marthin Lundquist
DEAS A/S

Instruktøren er meget præsentationsorienteret og inddrager én i undervisningen og materialet. Han er god til at variere undervisningen, så det ikke bliver trivielt.

Det er tydeligt, at instruktøren både har hands-on experience og ikke kun teorien, med mange gode eksempler som refererede til real-world udfordringer, vi måtte opleve.

Gode faciliteter og god forplejning, uden at at man drukner i usunde vaner.

— Kenneth Middelboe Carlson
Svend Hoyer A/S

Very good course, the instructor was the best. I've been here at SuperUsers before, now I'm here again, and hopefully coming back another time.

— Mads From
Sampension Administrationsselskab A/S

Instruktøren virkede meget kompetent og har meget viden om sit fagområde. Han var god til at forklare på en forståelig og humoristisk måde. Derudover var der simple øvelser, som gav god forståelse. 

— Jeppe Hvelplund
Vattenfall Vindkraft A/S

Instruktøren var rigtig god til at gå i dybden, men samtidig være sikker på at folk var med. Virkelig flot sted, lokale og lækker mad.

Der var ingen tvivl om at instruktøren vidste præcis, hvad han snakkede om, og selv de mest simple spørgsmål blev besvaret med glæde, og uden at nogen skulle føle sig dumme.

— Jesper Nederby
Rudersdal Kommune

Dejligt hyggeligt sted, hvor receptionist, køkkenet, undervisere får en til at føle hjemme. Gode rammer skaber god læring. Rigtig god mad, der er med til at give en helhed i oplevelsen af at være på kursus hos SuperUsers.

— Henrik Valentin Eltang
Privatperson

Super tilfreds med stedet og opholdet over i hestestalden. Vil se om jeg ikke kan komme her over igen, til næste kursus jeg skal på. Rigtig flot bygning og fedt at opleve sådan et sted. Kanon sted at holde kursus.

— Mads-Ejnar Kehlet
Herningsholm IT-center

Er du i tvivl?

Det ligger os meget på sinde, at du finder det kursusforløb, der skaber størst værdi for dig og din arbejdsplads. Tag fat i vores kursusrådgivere, de sidder klar til at hjælpe dig!

SuperUsers
Har du spørgsmål? Kontakt os