sql >> Database teknologi >  >> RDS >> Sqlserver

Liste over dato- og tidsfunktioner i SQL Server (T-SQL)

Dette indlæg indeholder en liste over Transact-SQL dato- og klokkeslætsfunktioner, der er tilgængelige i SQL Server (fra SQL Server 2017).

Dette inkluderer funktioner, der returnerer datoen eller dele af datoen, såvel som funktioner, der manipulerer og/eller formaterer datoen.

Systemdato/tidsværdier

Følgende funktioner returnerer systemets dato og klokkeslæt. Dato-/tidsværdierne, der returneres af disse funktioner, er alle afledt af det operativsystem, som forekomsten af ​​SQL Server kører på.

Højere præcision

  • SYSDATETIME ()
  • SYSDATETIMEOFFSET ()
  • SYSUTCDATETIME ()

Lavere præcision

  • CURRENT_TIMESTAMP
  • GETDATE ()
  • GETUTCDATE ()

Returdato/tidspunkt dele

Disse funktioner returnerer den relevante del af den dato, du angiver, fra den dato, du angiver.

For eksempel kan du bruge MONTH() for at returnere månedskomponenten for den givne dato.

  • DATENAME ( datepartdato )
  • DATEPART ( datepartdato )
  • DAG ( dato )
  • MÅNED ( dato )
  • ÅR ( dato )

Returner en dato/tidsværdi fra dens dele

Disse funktioner giver dig mulighed for at opbygge en dato- og/eller tidsværdi ud fra de forskellige dele, der udgør datoen/klokkeslættet. Du skal blot angive de forskellige dele, og funktionen returnerer dato/klokkeslæt i den relevante datatype.

Du kan f.eks. videregive værdierne for år, måned og dag til DATEFROMPARTS() funktion, og den returnerer en dato værdi, der består af disse dele.

  • DATEFROMPARTS ( årmåneddag )
  • DATETIME2FROMPARTS ( årmåneddagtimeminutsekunderbrøkerpræcision )
  • DATETIMEFROMPARTS ( årmåneddagtimeminutsekundermillisekunder )
  • DATETIMEOFFSETFROMPARTS ( årmåneddagtimeminutsekunderbrøkertime_offsetminutforskydningpræcision )
  • SMALLDATETIMEFROMPARTS ( årmåneddagtimeminut )
  • TIMEFROMPARTS ( timeminutsekunderbrøkerpræcision )

Tilbagefør forskellen mellem to dato-/tidsværdier

Følgende funktioner kan bruges til at returnere forskellen mellem to forskellige dato/tidsværdier.

  • DATEDIFF ( datepartstartdatoslutdato )
  • DATEDIFF_BIG ( datepartstartdatoslutdato )

Bemærk, at disse funktioner stort set gør det samme. Forskellen ligger i returværdien.

Rediger dato-/tidsværdier

  • DATEADD (datepartnummerdato )
  • EOMONTH ( startdato [, month_to_add ] )
  • SKIFTNING (DATOTIMEOFFSETtidszone )
  • TODATETIMEOFFSET (udtryktidszone )

Indstil eller returner sessionsformatfunktioner

  • @@DATEFIRST
  • INDSTILL FØRST DATO { nummer | @ number_var }
  • INDSTIL DATOFORMAT { format | @ format_var }
  • @@LANGUAGE
  • INDSTIL SPROG { [ N ]  sprog | @ language_var }
  • sp_helplanguage [ [ @language = sprog ]

Valider en dato/tidsværdi

Denne funktion giver dig mulighed for at kontrollere, om argumentet, der sendes til det, har en gyldig dato- eller tidsværdi.

  • ISDATE ( udtryk )

Relaterede funktioner/artikler

  • ODBC-skalarfunktioner for dato og klokkeslæt
  • Sådan formateres dato og klokkeslæt i SQL Server

  1. Ret "Aritmetisk overløbsfejl ved konvertering af int til datatype numerisk" i SQL Server

  2. TSQL-e-mail-validering (uden regex)

  3. TreeView-kontrol med underformularer

  4. SQL Server standard tegnkodning