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

Excel VBA

Det har bestemt været pengene værd. Jeg kender flere, som har taget VBA kursus on-site i et par dage eller deromkring , og de har slet ikke fået det samme ud af det som jeg har via denne side. Jeg har allerede udviklet små og større modeller til min arbejdsplads, og modellerne bruges allerede internationalt, det havde jeg ikke kunnet uden dette kursus.

Det er kanon, at man får personlig feedback og det går som regel tilmed hurtigt. Dygtig læremester, som sætter sig ind i mine specifikke problemstillinger - det er et stort plus. Den personlige kontakt er max vigtig.

Jeg vil anbefale dette til andre, der spørger til dette.

Michael Mortensen, DLH

Excel videregående 2003

Rigtig godt kursus - Første gang jeg prøver at tage et kursus på denne måde, og det virker.

Måden det er bygget op på, med opgaverne på hjemmesiden og kursusmaterialet er rigtig godt.

Hurtigt og brugbart feedback...

Maria Olesen, Telia

Excel VBA

Super form for kursus, har været perfekt at jeg kunne koncentrere mig om kurset når jeg havde tid.

Hurtig tilbagemelding på øvelser og altid hurtigt svar tilbage når man havde brug for hjælp.

Lækkert at man får dine løsningsforslag så man kan få ideer til at skrive scriptet på en anden måde.

Henrik Madsen, Alfa Laval Kolding A/S

DreamWeaver CS4

Det bedste af det hele - din ubegrænsede tålmodighed. Jeg vidste intet om hjemmesider, havde aldrig været på IT kurser, plus dansk er ikke min modersmål - jeg misforstod tit, hvad du skrev. Det har sikkert været meget irriterende for dig, men du fortsætte at forklare uden at blive sur. Det er meget vigtigt for en begynder ikke at være "skræmt væk", fordi så tænker man: "mon ikke klarer jeg det alligevel".
Jeg synes, emnerne for kurser var godt valgte.
Det var godt, at man kunne arbejde med kurser, når man havde tid - der var ingen tidsfrister til hvert emne.
Det var godt, at du svarede hurtigt på spørgsmålene.

Tak for kursus! Det var en god oplevelse, det var en stor udfordring for mig, men det var meget interessant at "fægte" igennem det!

Antra Kahr, kahrius.dk

Excel VBA

Jeg har gennemført kurset Excel VBA. Jeg var skeptisk overfor måden at lære på inden jeg gik i gang, men jeg må sige at min skepsis blev gjort til skamme. Lige fra første lektion følte jeg at jeg virkelig lærte noget.

Thors tilgang til materialet er perfekt. Gennem løbende øvelser får man lejlighed til at afprøve teorien i praksis.

Beder man om lidt hjælp, så kommer den lynhurtig – men det er kun et hint og så kan man selv finde ud af resten – det er perfekt for herved tvinges eleven til at tænke sig om – mon det kan bruges i folkeskolen også :).

Kurset er ALLE pengene værd og kan køres når man har tid og er motiveret. Holder man for lange pauser i undervisningen, så komme Thors pegefinger i form af en mail og så er det bare om at komme i gang igen :)

Jacob Madsen, Mettler-Toledo A/S

< >
Se flere referencer

Funktioner til konvertering og formatering

Igen først en lille oversigt

FunktionBeskrivelse
CAST(felt AS datatype) Konverterer feltet til datatypen
CONVERT(datatype, felt, (evt. datoformat)) Konverterer feltet til datatypen,
men her med mulighed for at angive datoformatet
FORMAT(felt, format) Viser feltet i som angivet i formatet

Og vi har nok også brug for en oversigt over datatyper

 DatatypeBeskrivelse 
char(n)  Fast bredde tekst. Max 8.000 tegn 
varchar(n)  Variabel tekst. Max 8.000 tegn 
varchar(max)  Variabel tekst. Max. 1.073.741.824 tegn
text Variabel tekst. Max 2Gb tekst
nchar(n)  Fast bredde unicode tekst. Max 4.000 tegn 
nvarchar(v)  Variabel unicode tekst. Max 4.000 tegn
nvarchar(max)  Variabel unicode tekst. Max 536.870.912 tegn
ntext  Variabel unicode tekst. Max 2Gb tekst 
bit 0, 1 eller NULL 
binary(n)  Fast bredde binær streng. Max 8.000 bytes 
varbinary(n)  Variabel binær streng. Max 8.000 bytes 
varbinary(max)  Variabel binær streng. Max 2Gb data 
image  Variabel binær streng. Max 2Gb data  
tinyint  Heltal mellem 0 og 255 
smallint  Heltal mellem -32.768 og 32.767
int  Heltal mellem -2.147.483.648 og 2.147.483.647 
bigint  Heltal mellem -9.223.372.036.854.775.808 and 9.223.372.036.854.775.807 
decimal(p,s)  Tillader tal mellem -10^38 +1 to 10^38 –1.
p er antallet af ciffre i tallet - skal være mellem 1 og 38 (default er 18)
s er antallet af ciffre i tallet til højre for decialkommaet - skal være mellem 0 og p (default er 0)
numeric(p,s)  Som decimal(p,s) 
smallmoney  Beløb mellem -214.748,3648 og 214.748,3647 
money  Beløb mellem -922.337.203.685.477,5808 to 922.337.203.685.477,5807 
float(n)  Tal mellem -1,79E + 308 og 1,79E + 308. 
Brug float(24) for store tal og float(53) for meget store tal.
real  Tal mellem -3,40E + 38 og 3,40E + 38
datetime  Fra 1. januar 1753 til 31. december 9999 med en nøjagtighed på 3,33 millisekunder 
datetime2  Fra 1. januar 0001 til 31. december 9999 med en nøjagtighed på 100 nanosekunder 
smalldatetime  Fra 1. januar 1900 til 5. juni 2079 med en nøjagtighed på 1 minut 
date  Kun dato. Fra 1. januar 0001 til 31. december 9999 
time  Kun tid med nøjagtighed på 100 nanosekunder 
datetimeoffset  Som datetime2, men med tilføjelse af tidszone
timestamp  Gemmer et unikt nummer, der bliver opdateret hver gang en række bliver oprettet eller ændret.
Hver tabel kan kun have ét timestamp felt
sql_variant  Gemmer op til 8.000 bytes data af forskellig datatype - dog ikke text, ntext eller timestamp 
uniqueidentifier  Gemmer en unik identifier (GUID) 
xml  Bruges til XML formateret data. Max 2Gb 
cursor  Bruges til at gemme en markør, der bruges i database operationer 
table  Bruges til at gemme et resultatsæt til senere behandling 

Lidt eksempler

CAST og CONVERT minder rigtig meget om hinanden - vi kigger primært på CONVERT og tager et par eksempler

SELECT 
'Født: ' + CONVERT(varchar, [BirthDate]) as Fdag
FROM Employee

Prøv det og se, hvordan tekst og dato på magisk vis bliver lagt sammen.

Man kan så også skrive 

SELECT 
'Født: ' + CONVERT(varchar, [BirthDate], 105) as Fdag
FROM Employee

Prøv igen og se, at datoen nu bliver formateret, som vi gerne vil have det (tror jeg).

Det hemmelige nummer 105 har jeg fundet på siden her: http://msdn.microsoft.com/en-us/library/ms187928.aspx hvor du kan se andre interessante hemmelige numre.

FORMAT bruges til tal og datoer og det kan se sådan her ud:

SELECT 
FORMAT([BirthDate], 'dd-MM-yyyy') as Fdag,
FORMAT([VacationHours], '0.00 timer') as FerieTimer
FROM Employee

Se, hvad det giver. Nok ikke den store overraskelse...

Man kan også gøre sådan her

SELECT 
FORMAT([BirthDate], 'd', 'da-DK') as Fdag,
FORMAT([VacationHours], 'c', 'da-DK') as FerieTimer
FROM Employee

Prøv det...
Ja, det var ikke helt som forventet - 'd' står, som du nok har gættet for date og 'c' for currency - så ja, det giver ikke meget mening i denne sammenhæng...

Læs lidt mere om format her

http://technet.microsoft.com/en-us/library/hh213505.aspx

 

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.