Dapatkan komponen tarikh nilai Datetime dalam SQL Server
Mengekstrak komponen tarikh daripada nilai Datetime adalah tugas biasa dalam SQL Server. Kaedah yang cekap ialah menggunakan fungsi DATEADD.
Gunakan fungsi DATEADD:
<code class="language-sql">SELECT DATEADD(DAY, DATEDIFF(DAY, 0, CRETS), 0) FROM tblMeasureLogv2</code>
Di sini, CRETS ialah lajur masa tarikh. Dengan menggunakan DATEADD, kami menentukan bilangan tarikh untuk ditambah pada nilai datetime, dalam kes ini sifar. Ini pada asasnya menetapkan semula komponen jam, minit dan kedua nilai kepada tengah malam, menghasilkan bahagian tarikh.
Perbandingan dengan kaedah lain:
Kaedah DATEADD dilaksanakan lebih cepat sedikit daripada kaedah penukaran apungan lantai yang dicadangkan oleh Matt. Kaedah lain yang biasa digunakan, seperti STRINGCONVERT dan pernyataan SELECT tulen, adalah jauh lebih perlahan berbanding.
Penilaian prestasi:
Dalam ujian pada jadual yang sangat besar yang mengandungi lebih 130 juta baris, kaedah DATEADD menunjukkan prestasi berikut:
<code>SQL Server 执行时间:CPU时间 = 531 毫秒,经过时间 = 33440 毫秒</code>
Sebagai perbandingan, masa CPU untuk kaedah tuang lantai ialah 625 milisaat dan masa CPU untuk kaedah penukaran rentetan ialah 1953 milisaat. Ini menunjukkan bahawa kaedah DATEADD lebih cekap dalam persekitaran ujian tertentu ini.
Kesimpulan:
Dalam SQL Server, menggunakan fungsi DATEADD menyediakan cara yang cekap untuk memotong nilai datetime ke dalam komponen tarikhnya. Kesederhanaan dan kelajuannya menjadikannya pilihan yang sesuai untuk pelbagai senario pemprosesan data.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Komponen Tarikh dengan Cekap daripada Nilai DateTime dalam SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!