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

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

T-SQL TIMEFROMPARTS() funktionen giver dig mulighed for at opbygge en tid værdi fra de forskellige tidsdele. Du kan også angive nøjagtigheden af ​​returværdien.

Nedenfor er eksempler på, hvordan denne funktion fungerer.

Syntaks

Syntaksen ser sådan ud:

TIMEFROMPARTS ( hour, minute, seconds, fractions, precision )

Hvor de første 4 argumenter er heltalsudtryk, der angiver den pågældende tidsdel. Det 5. argument er et heltal, der angiver nøjagtigheden af tiden værdi, der skal returneres.

Eksempel

Her er et eksempel til at demonstrere.

SELECT TIMEFROMPARTS( 23, 35, 29, 1234567, 7 ) AS Result;

Resultat:

+------------------+
| Result           |
|------------------|
| 23:35:29.1234567 |
+------------------+

I dette tilfælde specificerede jeg en præcisionsværdi på 7.

For at være mere præcis (ingen ordspil), specificerer præcisionsargumentet faktisk skalaen . Skala er antallet af cifre til højre for decimaltegnet. Nøjagtighed er det samlede antal cifre.

Ugyldige argumenter

Hvis nogle af argumenterne er ugyldige, vil der opstå en fejl. Eksempel:

SELECT TIMEFROMPARTS( 23, 35, 61, 1234567, 7 ) AS Result;

Resultat:

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

I dette tilfælde har jeg givet et minut argument for 61 .

Antal argumenter

Der vil også opstå en fejl, hvis du ikke angiver det korrekte antal argumenter. Eksempel:

SELECT TIMEFROMPARTS( 23, 35, 29, 7 ) AS Result;

Resultat:

The timefromparts function requires 5 argument(s).

Nul-værdier

Hvis nogen af ​​de første 4 argumenter er nul, er resultatet NULL :

SELECT TIMEFROMPARTS( 23, 35, NULL, 1234567, 7 ) AS Result;

Resultat:

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

Men hvis det 5. argument (præcision ) er null, opstår der en fejl:

SELECT TIMEFROMPARTS( 23, 35, 29, 1234567, NULL ) AS Result;

Resultat:

Scale argument is not valid. Valid expressions for data type time scale argument are integer constants and integer constant expressions.

Fjernbetjening

Microsoft oplyser, at TIMEFROMPARTS() funktion kan fjernstyres til SQL Server 2012 (11.x) servere og højere. Det kan ikke fjernes til servere, der har en version, der er lavere end SQL Server 2012 (11.x).

En lignende funktion

Se også SMALLDATETIMEFROMPARTS()-eksempler i SQL Server (T-SQL) for at få en smalldatetime værdi i stedet for et tidspunkt værdi.


  1. MS SQL PÅ SLET CASCADE flere fremmednøgler, der peger på den samme tabel?

  2. Sådan omdøbes et kolonnenavn i SQL?

  3. Konverter String ISO-8601 dato til oracles tidsstempel datatype

  4. DefType Statements i VBA:The Dark Side of Backward Compatibility