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

DATETIMEFROMPARTS() Eksempler i SQL Server (T-SQL)

I SQL Server er DATETIMEFROMPARTS() funktionen fungerer ligesom DATEFROMPARTS() funktion, bortset fra at den også returnerer tidsdelen af ​​datoen.

 DATETIMEFROMPARTS() Funktionen accepterer syv argumenter, der hver repræsenterer en anden del af datoen/klokkeslættet. Funktionen returnerer derefter en datotid værdi fra de givne dele.

Syntaks

Sådan går syntaksen:

DATETIMEFROMPARTS ( year, month, day, hour, minute, seconds, milliseconds )

Hvor hvert argument er et heltalsudtryk, der angiver den del af datoen. For eksempel year er et heltal, der angiver årsdelen af ​​datoen.

Eksempel

Her er et eksempel, der viser, hvordan det virker:

SELECT DATETIMEFROMPARTS( 2021, 05, 10, 23, 35, 29, 500 ) AS Result;

Resultat:

+-------------------------+
| Result                  |
|-------------------------|
| 2021-05-10 23:35:29.500 |
+-------------------------+

Så du kan se, at hvert af vores argumenter vises i den relevante del af resultatet.

Ugyldige værdier

Værdierne skal være inden for et gyldigt interval for den pågældende datodel. For eksempel kan du ikke angive en timedel til at være 30 (den skal være mellem 0 og 24). Eksempel:

SELECT DATETIMEFROMPARTS( 2021, 05, 10, 30, 35, 29, 500 ) AS Result;

Resultat:

Cannot construct data type datetime, some of the arguments have values which are not valid.

Antal argumenter

Du skal også angive det korrekte antal argumenter (7). Hvis du ikke gør det, får du en fejlmeddelelse, der forklarer dette:

SELECT DATETIMEFROMPARTS( 2021, 05, 10 ) AS Result;

Resultat:

The datetimefromparts function requires 7 argument(s). 

Nul-værdier

Hvis nogle af argumenterne er nulværdier, er resultatet NULL :

SELECT DATETIMEFROMPARTS( 2021, 05, 10, NULL, 35, 29, 500 ) AS Result;

Resultat:

+----------+
| Result   |
|----------|
| NULL     |
+----------+

  1. Oracle-forbindelsesstreng uden tnsnames.ora-fil

  2. SQL Server – Dissekere det interne af sp_spaceused

  3. Postgres-fejl:Mere end én række returneret af en underforespørgsel, der bruges som et udtryk

  4. Er der nogen forskel mellem DateTime i c# og DateTime i SQL server?