Structured Query Language eller SQL er et standardiseret computer programmeringssprog til styring og bruge relationelle databaser . Sybase og Microsoft bruger en variant af SQL kaldet Transact- SQL til brug med deres proprietære database -software. Ud over at tillade brugerdefinerede funktioner , Transact- SQL kommer med et sæt indbyggede funktioner, herunder flere til at beregne datoer. Datetime datatypekrav
Relationelle databaser ved hjælp af standard SQL har flere datatyper, at skabe datafelter og elementer , herunder tegntypen , et par forskellige heltal typer og datetime . Datetime gemmer dato og tid i et enkelt felt, selvom du kan kun bruge den ene eller den anden, hvis du ikke har brug for begge dele . Transact -SQL dato funktioner arbejde datetime datafelter , hvis du har datoer i CHAR eller andre former for tekstfelter , for eksempel , er du nødt til at konvertere dem til det datetime type for de funktioner til at arbejde ordentligt
< . br > DateAdd og DateDiff
Transact- SQL har to funktioner , DateAdd og DateDiff , der lader dig udføre aritmetiske på datoer . DateAdd tager en dato del kode , et heltal og en dato. Koden angiver, hvad du føjer til den leverede dato f.eks dage, kvartaler eller dag i året . Det tal er, hvor mange af disse date dele, du ønsker at tilføje til den dato . Funktionen returnerer en anden dato , som er resultatet af beregningen. For eksempel, hvis feltet buy- dato indeholder September 15, 2005 så DateAdd ( d , 3, buy- dato) tilføjer tre dage til denne dato, og returnerer 18 september 2005 som følge heraf. DateAdd ( wk , 1, buy- dato) tilføjer en uge og returnerer September 22, 2005 .
DateDiff Funktionen bruger også en dato del kode, men tager i to datoer. Det trækker de datoer og returnerer et heltal , som er antallet af dage, uger eller år mellem dem. Hvis feltet første dato indeholder 1 Juli 2005 og et andet felt , anden date, indeholder 11 Jul 2005 , så DateDiff (d, første date, anden date ) returnerer en 10 . DateDiff ( wk , første date, anden date ) returnerer en 2 .
DateName og DatePart
To andre funktioner, DateName og DatePart , trække specifikke data fra datoer. Hvis du har et felt kaldet Fødsel års , og den indeholder November 1, 1970 , DateName (måned , Født års ) returnerer tegnstreng "November ". DateName (år, Født års ) giver dig 1970 som en anden tegnstreng . Den DatePart funktionen fungerer meget det samme , bortset fra at det returnerer et heltal resultat. DatePart (måned , fødsel- år) giver en 11, og DatePart (år, fødsel- år) giver 1970 som et tal.
Getdate og GetUTCDate
getdate funktionen returnerer den lokale dato og klokkeslæt i 24 -timers format , justeret for tidszone og sommertid status. Den returnerer oplysningerne i datetime -format, så du kan bruge den direkte i en af de andre funktioner, der er beskrevet ovenfor. Den GetUTCDate Funktionen returnerer også den aktuelle tid og dato , men i Coordinated Universal Time , som vil være den samme for alle brugere over hele verden , uanset tidszone. Den også returnerer sine data som en datetime datatype . Hvis den aktuelle dato er November 1, 2011 , og derefter DateName (måned , GETDATE () ) returnerer tekststrengen "November ".