sql >> Databasteknik >  >> RDS >> Sqlserver

DATEFROMPARTS() Exempel i SQL Server (T-SQL)

Du kan använda T-SQL DATEFROMPARTS() funktion i SQL Server för att returnera ett datum värde som mappas till datumdelarna som du tillhandahåller som heltalsuttryck.

Så här fungerar det är att du anger tre värden (ett för varje år , månad och dag värden), och SQL Server returnerar ett datum värde baserat på de värden du tillhandahåller.

Exempel nedan.

Syntax

Först, här är syntaxen:

DATEFROMPARTS ( year, month, day )

Så här kan varje argument vara:

year
Ett heltalsuttryck som anger ett år.
month
Ett heltalsuttryck som anger en månad, från 1 till 12.
day
Ett heltalsuttryck som anger en dag.

Exempel

Här är ett exempel på användning:

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

Resultat:

+------------+
| Result     |
|------------|
| 2021-05-10 |
+------------+

Ogiltiga värden

Du måste se till att datumdelarna tillhandahålls i rätt ordning, annars kan du få ett fel. Ännu värre, du kanske inte får ett felmeddelande (om dagdelen är 12 eller mindre), och därför kan du missa ett stort problem med hur datumet översätts.

Här är ett exempel på ett ogiltigt värde:

SELECT DATEFROMPARTS( 2021, 30, 10 ) AS Result;

Resultat:

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

Detta beror på att vi angav 30 som månadsdel. Den här delen accepterar endast värden mellan 1 och 12.

Nullvärden

Om något av argumenten är nollvärden blir resultatet NULL .

Här är ett exempel med ett nullvärde:

SELECT DATEFROMPARTS( 2021, NULL, 10 ) AS Result;

Resultat:

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

Därför är det förmodligen självklart (men jag säger det ändå), att om alla argument är nollvärden blir resultatet NULL :

SELECT DATEFROMPARTS( NULL, NULL, NULL ) AS Result;

Resultat:

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

  1. Hur SHOW COLLATION fungerar i MariaDB

  2. Få maskinskrivna resultat från ActiveRecord rå SQL

  3. Hur man listar alla databaser med PostgreSQL

  4. Åtkomst nekas när en databas bifogas