首頁 >資料庫 >mysql教程 >如何在 SQL Server 中將 mmddyyyy VARCHAR 字串轉換為 DATETIME?

如何在 SQL Server 中將 mmddyyyy VARCHAR 字串轉換為 DATETIME?

DDD
DDD原創
2025-01-13 06:23:44232瀏覽

How to Convert mmddyyyy VARCHAR Strings to DATETIME in SQL Server?

在 SQL Server 中處理 mmddyyyy VARCHAR 到 DATETIME 轉換

在 SQL Server 中直接將 mmddyyyy 格式的字串轉換為 DATETIME 通常會導致錯誤。 這是因為標準 CONVERT 函數需要特定的日期格式。 本文為這個常見問題提供了一個可靠的解決方案。

這裡有一個可靠的方法:

<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>

此程式碼的功能如下:

  1. RIGHT 函數擷取年份(最後四個字元)。
  2. LEFT 函數擷取月份(前兩個字元)。
  3. SUBSTRING 擷取日期(字元 3 和 4)。
  4. 這些部分用連字號連接起來建立一個 yyyy-mm-dd 字串。
  5. CONVERT 將此字串轉換為 DATETIME 值。

此技術透過明確地將字串元件重新排列為 SQL Server DATETIME 解釋的正確順序,克服了簡單 CONVERT 的限制,有效解決了超出範圍的錯誤。 這可確保 mmddyyyy 字串準確可靠地轉換為 DATETIME 資料類型。

以上是如何在 SQL Server 中將 mmddyyyy VARCHAR 字串轉換為 DATETIME?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn