Hop til teksten

IT FJERNUNDERVISNING
- IT kurser når Du har tid!

Funktioner til håndtering af dato og tid

Først en lille oversigt

FunktionBeskrivelse
GETDATE() Returnerer dato og tid lige nu
DATENAME(type, datofelt) Returnerer information om en dato som en tekststreng
DATEPART(type, datofelt)  Returnerer information om en dato om et tal
DAY(datofelt)  Returnerer nummeret på dagen i en dato
MONTH(datofelt)  Returnerer månedsnummert på en dato 
YEAR(datofelt)  Returnerer årstallet for en dato 
DATEDIFF(type, datofelt1, datofelt2)  Returnerer forskellen mellem de to datoer 
DATEADD(type, antal, datofelt)  Returnerer en dato et antal dage, måneder, år, ... i forhold til en dato

Og så lidt eksempler

DATENAME()

Datename kaldes sådan her

SELECT Dato, DATENAME(dw, Dato) AS Ugedag FROM tabel

Og i dette eksempel får man navnet på datoens ugedag retur. Som type kan man bruge følgende værdier

TypeBetydning
yy, yyyy År
qq, q Kvartal
mm, m Måned
dy, y Dag i året
(altså antal dage fra 1/1 i året)
dd, d Dag
wk, ww Uge
dw, w Ugedag
hh Time
mi, n Minut
ss, s Sekund
ms Millisekund
mcs Mikrosekund
ns Nanosekund

DATEPART()

Kaldes præcis om DATENAME og man kan bruge de samme typer. Forskellen er "blot" at man får et heltal retur i stedet for en tekst.

DATEADD() og DATEDIFF()

Og her kan man også bruge typerne ovenfor.

SELECT Dato, DATEDIFF(mm, GETDATE()) AS AntalMaaneder 
FROM tabel;

Her finder vi, som du måske har regnet ud, antallet af måneder mellem den dato der står i feltet Dato og dags dato.

SELECT Dato, DATEADD(mm, 3) AS AntalMaaneder 
FROM tabel;

Ja, og her lægger vi 3 måneder til den dato, der står i Dato feltet

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.