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

Frontpage

Tak for et godt kursus.

Jeg syntes følgende har været godt:

  1. Beskrivelsen af de forskellige opgaver > svar fra underviser, med tips og forslag til andre måder at se tingene på
  2. At underviser ikke bare pr. automatic har godkendt lektionerne
  3. Måden underviser har besvaret spørgsmål > meget forstålige
  4. At underviser køber et program "kun" fordi jeg har en dansk version
  5. At man efterfølgende kan bruge kurset ved at loge på
  6. Ja jeg kunne blive ved, men det kommer vel i bund og grund an på hvad man havde som forventninger og til det kan jeg kun sige at mine forventninger er blevet opfyldt.
  7. Det vil nok altid være ting man kunne i forvejen, men for mit vedkomne, syntes jeg det var rart at blive bekræftiget i at det man gør er rigtig.

Endnu engang tak for et godt kursus, jeg vil anbefale andre til dig.

Med venlig hilsen

Peder Pedersen 

Peder Pedersen, DGI, Vejle Amt

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

Excel videregående

Det har været rigtig godt at kunne arbejde med kurset når man selv synes at man havde tid til det.

Overskueligt materiale og overkommelige opgaver.

Hurtige svar på opgaveløsninger.

Et rigtig godt kursus :o)

Susanne Jensen, KoncernØkonomi

Excel grundlæggende 2007

Har været fuldt ud tilfreds med kursusforløbet, det har ikke taget nær så lang tid som frygtede, men jeg har også haft en del huller i min hverdag som jeg kunne bruge til kurset.

Skal helt klart videre med det videregående kursus og håber der er lidt mere hjernegynmastik.

Hurtig hjælp via chatten og hurtige svar efter øvelserne.

Kan godt anbefales til andre. 

Helle Majdal, Mejdal Service og Teknik

Excel VBA

Kurset er godt, fordi det tvinger kursisten til at arbejde selvstændigt. Det er lidt lig forelæsning, hvor det er fuldstændigt op til een selv at arbejde med stoffet.
Thor Østergaards pædagogik er baseret på "hjælp til selvhjælp", og alt er holdt i en let og uhøjtidelig tone.

Fjernundervisning har yderligere den fordel at man kan sidde hjemme og koncentrere sig om emnet, uden at blive forstyrret af andre (ofte mindre motiverede) kursister.

Flemming Degn, Privat

< >
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.