Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform Systeem (PDW)
SQL-database in Microsoft Fabric
Geeft een datetimeoffset-waarde terug voor de gespecificeerde datum- en tijdargumenten. De geretourneerde waarde heeft een precisie die wordt gespecificeerd door het precisieargument, en een offset zoals gespecificeerd door de offsetargumenten.
Transact-SQL syntaxis-conventies
Syntaxis
DATETIMEOFFSETFROMPARTS ( year, month, day, hour, minute, seconds, fractions, hour_offset, minute_offset, precision )
Arguments
jaar
Een gehele uitdrukking die een jaar specificeert.
maand
Een gehele uitdrukking die een maand specificeert.
dag
Een gehele uitdrukking die een dag specificeert.
uur
Een geheel getal dat de uren specificeert.
minuut
Een gehele expressie die de minuten specificeert.
Seconden
Een gehele uitdrukking die de seconden specificeert.
Breuken
Een gehele getaluitdrukking die een waarde van fractieseconden specificeert.
hour_offset
Een gehele expressie die het uurgedeelte van de tijdzone-offset specificeert.
minute_offset
Een gehele uitdrukking die het minutieuze deel van de tijdzone-offset specificeert.
precisie
Een geheelgetal literale waarde die de precisie specificeert van de datetimeoffset-waarde die DATETIMEOFFSETFROMPARTS zal terugkeren.
Retourtypen
datetimeoffset(precisie)
Opmerkingen
DATETIMEOFFSETFROMPARTS geeft een volledig geïnitialiseerd data-timeoffset-datatype terug. De offset-argumenten geven de tijdzone-offset weer voor. Voor weggelaten offset-argumenten wordt DATETIMEOFFSETFROMPARTS aangenomen dat er een tijdzone-offset van 00:00 is - met andere woorden, geen tijdzone-offset. Voor gespecificeerde offsetargumenten wordt DATETIMEOFFSETFROMPARTS voor beide argumenten waarden verwacht, en beide waarden positief of negatief. Als minute_offset een waarde heeft en hour_offset geen waarde heeft, DATETIMEOFFSETFROMPARTS zal er een fout ontstaan.
DATETIMEOFFSETFROMPARTS zal een fout veroorzaken als de andere argumenten ongeldige waarden hebben. Als ten minste één vereiste argument een NULL waarde heeft, dan DATETIMEOFFSETFROMPARTS zal teruggeven NULL. Als het precisieargument echter een NULL waarde heeft, zal er DATETIMEOFFSETFROMPARTS een fout ontstaan.
Het breukenargument hangt af van het precisieargument. Bijvoorbeeld, voor een precisiewaarde van 7 vertegenwoordigt elke fractie 100 nanoseconden; voor een precisie van 3 vertegenwoordigt elke breuk een milliseconde. Voor een precisiewaarde van nul moet de waarde van breuken ook nul zijn; anders zal er DATETIMEOFFSETFROMPARTS een fout ontstaan.
Deze functie kan op afstand worden overgebracht naar SQL Server 2012 (11.x) servers en hoger. Het wordt niet op afstand gelinkt naar servers die een versie onder SQL Server 2012 (11.x) hebben.
Voorbeelden
Eén. Een voorbeeld zonder fracties van een seconde
SELECT DATETIMEOFFSETFROMPARTS ( 2010, 12, 31, 14, 23, 23, 0, 12, 0, 7 ) AS Result;
Hier is het resultatenoverzicht.
Result
----------------------------------
2010-12-31 14:23:23.0000000 +12:00
(1 row(s) affected)
B. Voorbeeld met breuken van een seconde
Dit voorbeeld toont het gebruik van de breuk- en precisieparameters :
Wanneer breuken een waarde van 5 hebben en precisie een waarde van 1, vertegenwoordigt de waarde van breuken 5/10 van een seconde.
Wanneer breuken een waarde van 50 hebben en precisie een waarde van 2, vertegenwoordigt de waarde van breuken 50/100 van een seconde.
Wanneer breuken een waarde van 500 hebben en precisie een waarde van 3, dan vertegenwoordigt de waarde van breuken 500/1000 van een seconde.
SELECT DATETIMEOFFSETFROMPARTS ( 2011, 8, 15, 14, 30, 00, 5, 12, 30, 1 );
SELECT DATETIMEOFFSETFROMPARTS ( 2011, 8, 15, 14, 30, 00, 50, 12, 30, 2 );
SELECT DATETIMEOFFSETFROMPARTS ( 2011, 8, 15, 14, 30, 00, 500, 12, 30, 3 );
GO
Hier is het resultatenoverzicht.
----------------------------------
2011-08-15 14:30:00.5 +12:30
(1 row(s) affected)
----------------------------------
2011-08-15 14:30:00.50 +12:30
(1 row(s) affected)
----------------------------------
2011-08-15 14:30:00.500 +12:30
(1 row(s) affected)