DATETIME2FROMPARTS (T-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)

Fungsi ini mengembalikan nilai datetime2 untuk argumen tanggal dan waktu yang ditentukan. Nilai yang dikembalikan memiliki presisi yang ditentukan oleh argumen presisi.

Konvensi sintaks transact-SQL

Sintaksis

DATETIME2FROMPARTS ( year, month, day, hour, minute, seconds, fractions, precision )  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

Argumen

Tahun
Ekspresi bilangan bulat yang menentukan satu tahun.

Bulan
Ekspresi bilangan bulat yang menentukan satu bulan.

hari
Ekspresi bilangan bulat yang menentukan hari.

jam
Ekspresi bilangan bulat yang menentukan jam.

menit
Ekspresi bilangan bulat yang menentukan menit.

seconds
Ekspresi bilangan bulat yang menentukan detik.

Pecahan
Ekspresi bilangan bulat yang menentukan nilai detik pecahan.

Presisi
Ekspresi bilangan bulat yang menentukan presisi nilai datetime2 yang DATETIME2FROMPARTS akan ditampilkan.

Jenis yang dikembalikan

datetime2(presisi)

Keterangan

DATETIME2FROMPARTSmengembalikan nilai datetime2 yang diinisialisasi sepenuhnya. DATETIME2FROMPARTS akan menimbulkan kesalahan jika setidaknya satu argumen yang diperlukan memiliki nilai yang tidak valid. DATETIME2FROMPARTS mengembalikan null jika setidaknya satu argumen yang diperlukan memiliki nilai null. Namun, jika argumen presisi memiliki nilai null, DATETIME2FROMPARTS akan menimbulkan kesalahan.

Argumen pecahan tergantung pada argumen presisi . Misalnya, untuk nilai presisi 7, setiap pecahan mewakili 100 nanodetik; untuk presisi 3, setiap fraksi mewakili milidetik. Untuk nilai presisi nol, nilai pecahan juga harus nol; jika tidak, DATETIME2FROMPARTS akan menimbulkan kesalahan.

Fungsi ini mampu di-remote ke server SQL Server 2012 (11.x) ke atas. Ini tidak di-remote ke server yang memiliki versi di bawah SQL Server 2012 (11.x).

Contoh

J. Contoh tanpa pecahan detik

SELECT DATETIME2FROMPARTS ( 2010, 12, 31, 23, 59, 59, 0, 0 ) AS Result;  

Berikut adalah hasil yang ditetapkan.

Result  
---------------------------  
2010-12-31 23:59:59.0000000  
  
(1 row(s) affected)  

B. Contoh dengan pecahan detik

Contoh ini menunjukkan penggunaan pecahan dan parameter presisi:

  1. Ketika pecahan memiliki nilai 5, dan presisi memiliki nilai 1, nilai pecahan mewakili 5/10 detik.

  2. Ketika pecahan memiliki nilai 50, dan presisi memiliki nilai 2, nilai pecahan mewakili 50/100 detik.

  3. Ketika pecahan memiliki nilai 500, dan presisi memiliki nilai 3, maka nilai pecahan mewakili 500/1000 detik.

SELECT DATETIME2FROMPARTS ( 2011, 8, 15, 14, 23, 44, 5, 1 );  
SELECT DATETIME2FROMPARTS ( 2011, 8, 15, 14, 23, 44, 50, 2 );  
SELECT DATETIME2FROMPARTS ( 2011, 8, 15, 14, 23, 44, 500, 3 );  
GO  

Berikut adalah hasil yang ditetapkan.

----------------------  
2011-08-15 14:23:44.5  
  
(1 row(s) affected)  
  
----------------------  
2011-08-15 14:23:44.50  
  
(1 row(s) affected)  
  
----------------------  
2011-08-15 14:23:44.500  
  
(1 row(s) affected)  

Baca juga

datetime2 (Transact-SQL)