Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menukar String VARCHAR mmddyyyy kepada DATETIME dalam SQL Server?
Mengendalikan mmddyyyy VARCHAR kepada DATETIME Penukaran dalam Pelayan SQL
Menukar secara langsung rentetan berformat mmddyyyy kepada DATETIME dalam SQL Server selalunya membawa kepada ralat. Ini kerana fungsi CONVERT
standard menjangkakan format tarikh tertentu. Artikel ini menyediakan penyelesaian yang mantap untuk masalah biasa ini.
Ini kaedah yang boleh dipercayai:
<code class="language-sql">DECLARE @Date VARCHAR(8) SET @Date = '12312009' SELECT CONVERT(DATETIME, RIGHT(@Date, 4) + '-' + LEFT(@Date, 2) + '-' + SUBSTRING(@Date, 3, 2))</code>
Kod ini berfungsi seperti berikut:
RIGHT
mengekstrak tahun (empat aksara terakhir).LEFT
mengekstrak bulan (dua aksara pertama).SUBSTRING
mengekstrak hari (watak 3 dan 4).yyyy-mm-dd
.CONVERT
menukar rentetan ini kepada nilai DATETIME.Teknik ini mengatasi batasan CONVERT
yang mudah dengan menyusun semula komponen rentetan secara eksplisit ke dalam susunan yang betul untuk tafsiran DATETIME SQL Server, dengan berkesan menyelesaikan ralat luar julat. Ini memastikan penukaran rentetan mmddyyyy yang tepat dan boleh dipercayai kepada jenis data DATETIME.
Atas ialah kandungan terperinci Bagaimana untuk Menukar String VARCHAR mmddyyyy kepada DATETIME dalam SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!