T-SQL TIMEFROMPARTS()
funkce vám umožňuje vytvořit čas hodnotu z různých časových úseků. Můžete také určit přesnost návratové hodnoty.
Níže jsou uvedeny příklady, jak tato funkce funguje.
Syntaxe
Syntaxe vypadá takto:
TIMEFROMPARTS ( hour, minute, seconds, fractions, precision )
Kde první 4 argumenty jsou celočíselné výrazy určující konkrétní časovou část. Pátý argument je celočíselný literál určující přesnost času hodnotu, která má být vrácena.
Příklad
Zde je příklad k demonstraci.
SELECT TIMEFROMPARTS( 23, 35, 29, 1234567, 7 ) AS Result;
Výsledek:
+------------------+ | Result | |------------------| | 23:35:29.1234567 | +------------------+
V tomto případě jsem zadal hodnotu přesnosti 7.
Přesněji řečeno (bez slovní hříčky), argument přesnosti ve skutečnosti určuje měřítko . Měřítko je počet číslic napravo od desetinné čárky. Přesnost je celkový počet číslic.
Neplatné argumenty
Pokud je některý z argumentů neplatný, dojde k chybě. Příklad:
SELECT TIMEFROMPARTS( 23, 35, 61, 1234567, 7 ) AS Result;
Výsledek:
Cannot construct data type time, some of the arguments have values which are not valid.
V tomto případě jsem poskytl minutu argument 61
.
Počet argumentů
Chyba také nastane, pokud neuvedete správný počet argumentů. Příklad:
SELECT TIMEFROMPARTS( 23, 35, 29, 7 ) AS Result;
Výsledek:
The timefromparts function requires 5 argument(s).
Nulové hodnoty
Pokud je některý z prvních 4 argumentů null, výsledek je NULL
:
SELECT TIMEFROMPARTS( 23, 35, NULL, 1234567, 7 ) AS Result;
Výsledek:
+----------+ | Result | |----------| | NULL | +----------+
Pokud však pátý argument (přesnost ) je null, dojde k chybě:
SELECT TIMEFROMPARTS( 23, 35, 29, 1234567, NULL ) AS Result;
Výsledek:
Scale argument is not valid. Valid expressions for data type time scale argument are integer constants and integer constant expressions.
Vzdálené ovládání
Společnost Microsoft uvádí, že TIMEFROMPARTS()
Funkce může být vzdálena na servery SQL Server 2012 (11.x) a vyšší. Nelze jej vzdáleně oddálit k serverům, které mají verzi nižší než SQL Server 2012 (11.x).
Podobná funkce
Podívejte se také na příklady SMALLDATETIMEFROMPARTS() v SQL Server (T-SQL), abyste získali smalldatetime hodnotu namísto času hodnotu.