In SQL Server wordt de DATETIMEFROMPARTS()
functie werkt net als de DATEFROMPARTS()
functie, behalve dat het ook het tijdgedeelte van de datum retourneert.
De DATETIMEFROMPARTS()
functie accepteert zeven argumenten, die elk een ander deel van de datum/tijd vertegenwoordigen. De functie retourneert dan een datetime waarde van de gegeven delen.
Syntaxis
Zo werkt de syntaxis:
DATETIMEFROMPARTS ( year, month, day, hour, minute, seconds, milliseconds )
Waarbij elk argument een geheel getal is dat dat deel van de datum aangeeft. Bijvoorbeeld year
is een geheel getal dat het jaargedeelte van de datum aangeeft.
Voorbeeld
Hier is een voorbeeld dat laat zien hoe het werkt:
SELECT DATETIMEFROMPARTS( 2021, 05, 10, 23, 35, 29, 500 ) AS Result;
Resultaat:
+-------------------------+ | Result | |-------------------------| | 2021-05-10 23:35:29.500 | +-------------------------+
U kunt dus zien dat elk van onze argumenten wordt weergegeven in het toepasselijke deel van het resultaat.
Ongeldige waarden
De waarden moeten binnen een geldig bereik voor dat specifieke datumgedeelte vallen. U kunt bijvoorbeeld geen uurdeel specificeren als 30 (het moet tussen 0 en 24 liggen). Voorbeeld:
SELECT DATETIMEFROMPARTS( 2021, 05, 10, 30, 35, 29, 500 ) AS Result;
Resultaat:
Cannot construct data type datetime, some of the arguments have values which are not valid.
Aantal argumenten
U moet ook het juiste aantal argumenten opgeven (7). Als u dit niet doet, krijgt u een foutmelding waarin dit wordt uitgelegd:
SELECT DATETIMEFROMPARTS( 2021, 05, 10 ) AS Result;
Resultaat:
The datetimefromparts function requires 7 argument(s).
Null-waarden
Als een van de argumenten null-waarden zijn, is het resultaat NULL
:
SELECT DATETIMEFROMPARTS( 2021, 05, 10, NULL, 35, 29, 500 ) AS Result;
Resultaat:
+----------+ | Result | |----------| | NULL | +----------+