SQL Programmering

De filmklip der er lavet i starten af kurset, er super gode til at komme i gang med.

Der er meget hurtig respons, når man indsender en opgave.

Man kan selv tilpasset tidspunktet for kurset, når det passer ind i den normale hverdag

Johan Hauge, EM Retail Solutions A/S

SQL Programmering

Der har været en rigtig god rødtråd mellem teori og øvelserne hele vejen igennem kursuset. Der har samtidigt været udfordrende, men uden at jeg har siddet og slået mig selv på hovedet. Thor har samtidig været online godt og vel 24/7 til at besvare på spørgsmål og hjælpe mig igennem, hvor jeg har haft det svært.

Alexander Thompson, privat

DreamWeaver MX

Man lærer, som beskrevet, de grundlæggende ting i DreamWeaver, som man har brug for at vide. Derudover er der altid hurtig respons, og hjælp at hente, hvis det går galt.

Tina Hartmann, Privat

Excel VBA

Hurtig response på opgaver.

Udfordrende opgaver.

Flemming Pedersen, Semco Maritime

ASP.NET MVC 5

Jeg er imponeret over hvor meget tid Thor brugte i starten på at opgradere sin server til seneste version og samtidig havde tålmodighed til at hjælpe så det hele spillede.

Han er desuden meget hurtig til at svare på spørgsmål og rette opgaver.

Vil helt klart overveje at tage endnu et kursus 

Jacob Nørgaard, Privat

Excel VBA

Tak for et rigtigt godt og lærerigt kursus.

En af de store fordele ved kurset er, at man kan tage det i det tempo man ønsker og der er ikke noget tidspres.

Opgaverne er gode og udfordrene. Man kan selv, indenfor rammerne, bestemme hvor meget man vil gøre ud af det.

Beskrivelserne til opgaverne er lavet på en sådan måde, at der er også overladt lidt til ens egen fantasi, som jeg synes er en meget god ting.

Kurset har et rigtigt godt niveau, og materialet er godt lavet.

Underviseren ??? Ja, jeg ved ikke hvornår han sover.

Der går ikke lang tid efter man har sendt en opgave, til den er rettet, og altid med en god og konstruktiv kommentar. Også man får underviserens løsningsforslag.

Der er altid hurtig og god hjælp at hente, hvis man er gået i stå. Man får ikke bare løsningen, men et hint, så man kan komme videre.

Jeg vil varmt anbefale det til andre, og gør det !

Endnu engang tak for et godt kursus.

Med venlig hilsen

Peter Juul Jacobsen

Peter Juul Jacobsen, Mærsk Olie & Gas A/S

DreamWeaver MX

Hej Thor

Det bedste har været at jeg så hurtigt fik svar, der var aldrig en fornemmelse af at afstanden til hjælp var lang, det føltes som om vi bare genoptog en snak fra sidst...

Og så var der aldrig en følelse af at blive talt ned til, selv om jeg da godt er klar over at du adskillige gange må have revet dig i håret over mine spørgsmål.

Det har også været godt, at der ikke har været en tidsfrist. Jeg kan se at flere af mine kolleger har været igang med et kursus, som de måtte skippe, fordi de ikke var i stand til at overholde tidsfristen.

Vivi Bundgaard, Egvad Bibliotek

< >
Se flere referencer

Filtrering af data med underforespørgsler

Med underforespørgsler kan man ofte lave lang mere smart filterering på sine datasæt.

Lad os kaste os direkte ud i et eksempel:

SELECT CustomerID
      ,PersonID
      ,StoreID
      ,TerritoryID
      ,AccountNumber
  FROM Sales.Customer WHERE 
  CustomerId IN 
      (SELECT CustomerId FROM Sales.SalesOrderHeader WHERE 
       Month(OrderDate) = 5);

Når denne forespørgsel bliver kørt sker det "indefra og ud" - dvs. først bliver 

SELECT CustomerId FROM Sales.SalesOrderHeader WHERE 
       Month(OrderDate) = 5

kørt og den vil returnere alle de rækker fra SalesOrderHeader, hvor ordren er placeret i maj måned (uafhængigt af året).

Dernæst får vi fra Customer tabellen de rækker, hvor CustomerId findes i de rækker der er kommet retur.

Bemærk:

  1. Den indre forespørgsel må kun returnere én kolonne
  2. Man kan kun brug IN
  3. Men man kan godt bruge NOT IN til f.eks. at finde alle de kunder, der ikke har nogle ordrer.

Når du har betalt for kurset får du adgang til øvelser til hver lektion. Og når du har fået godkendt din besvarelse får du desuden adgang til mine løsningsforslag med ekstra tips og trix.