SQL Server で mmddyyyy varchar を datetime に変換する
SQL Server データベース ユーザーは、日付を表す varchar 文字列 (mmddyyyy 形式) を datetime データ型に変換するという課題に遭遇することがよくあります。 CONVERT
を使用した直接変換は、値が範囲外であるために頻繁に失敗します。 このガイドは信頼できるソリューションを提供します。
このプロセスには次の重要な手順が含まれます:
文字列の準備: まず、@Date
型の変数 (例: char(8)
) を宣言し、それに mmddyyyy 文字列を割り当てます。 これにより、文字列の長さが一貫したものになります。
文字列操作: 文字列関数 (LEFT
、RIGHT
、SUBSTRING
) を使用して、文字列コンポーネントを SQL Server が容易に理解できる yyyymmdd
形式に再配置します。 年、月、日の部分を個別に抽出し、正しい順序で連結します。
変換: 最後に、CONVERT
関数を使用して、並べ替えられた文字列を datetime
データ型に変換します。
例:
次の SQL コードは変換を示しています。
<code class="language-sql">DECLARE @Date char(8); SET @Date = '12312009'; SELECT CONVERT(datetime, RIGHT(@Date, 4) + LEFT(@Date, 2) + SUBSTRING(@Date, 3, 2));</code>
これは出力します:
<code>----------------------- 2009-12-31 00:00:00.000 (1 row(s) affected)</code>
このメソッドは変換を効果的に処理し、SQL Server データベース内でさらに日付関連の操作を可能にします。 @Date
変数を特定の varchar 日付文字列に適応させることを忘れないでください。
以上がSQL Server で mmddyyyy varchar を datetime に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。