Problem:
Du vill ha det aktuella datumet i T-SQL, men du behöver inte tiden.
Lösning:
Vi använder GETDATE()
funktion för att få aktuellt datum och tid. Sedan använder vi funktionen CAST() för att konvertera den returnerade datetime datatyp till ett datum datatyp.
SELECT CAST( GETDATE() AS Date ) ;
Här är resultatet av frågan:
2019-08-17
Diskussion:
För att få aktuellt datum och tid i SQL Server, använd GETDATE()
fungera. Denna funktion returnerar en datetime-datatyp; den innehåller med andra ord både datum och tid, t.ex. 2019-08-20 10:22:34
. (Obs:Den här funktionen tar inga argument, så du behöver inte sätta något inom parentes.)
Men om du bara vill ha det aktuella datumet – inte datumet och tiden – du kan använda CAST()
fungera. Den här funktionen tar valfritt uttryck eller valfritt kolumnnamn som första argument. Sedan använder du nyckelordet AS och anger den nya datatypen för att returnera. (De returnerade värdena kan vara kolumnvärden eller resultatet som returneras av uttrycket.)
I vårt exempel är funktionen GETDATE()
returnerade aktuellt datum och tid som 2019-08-17 20:05:34.540
. Genom att använda CAST()
med GETDATE()
, frågan ovan returnerade endast datumet 2019-08-17
.