ホームページ > データベース > mysql チュートリアル > SQL Server DateTime を HH:MM:SS 時刻形式に変換するにはどうすればよいですか?

SQL Server DateTime を HH:MM:SS 時刻形式に変換するにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-21 08:32:09
オリジナル
450 人が閲覧しました

How to Convert SQL Server DateTime to HH:MM:SS Time Format?

DateTime を HH:MM:SS 形式の時刻に変換します

SQL Server では、Time データ型には時間値が格納されますが、特定の表示形式は含まれません。 HH:MM:SS 形式で時刻値を抽出するには、DateTime フィールドを文字列に変換する必要があります。

CONVERT 関数を使用すると、次のように DateTime フィールドを目的の形式の文字列に変換できます。

<code class="language-sql">SELECT CONVERT(varchar(8), CAST([datetime] AS TIME), 108) AS [CSTTime]</code>
ログイン後にコピー

手順:

  • CONVERT 関数は、[datetime] フィールドを文字列に変換します。
  • varchar(8) パラメーターは、結果の文字列の長さを指定します (この場合は 8 文字)。 varchar は実際に使用された文字数のみを保存するため、char を使用する方が varchar より効率的です。
  • CAST([datetime] AS TIME) datetime 値を TIME データ型に変換し、日付部分を削除します。
  • 108 スタイル コードは、ミリ秒を無視して時間値を HH:MM:SS 形式に変換するように SQL Server に指示します。

例:

DateTime 値「2015-03-19 00:00:00.000」を指定すると、上記のクエリは「00:00:00」を返します。 datetime に時刻情報が含まれている場合は、その時刻情報が返されることに注意してください。

技術的背景:

SQL Server は内部的に、時刻値を午前 0 時以降のクロック数を表す 4 バイトの整数として保存します。各ティックは 3.3 ミリ秒を表します。したがって、Time データ型自体には特定の表示形式がありません。

CAST 構文を使用して DateTime を Time に変換すると、結果の Time 値にはミリ秒が保持されます。 HH:MM:SS 形式の書式設定された文字列を取得するには、CONVERT 関数を使用する必要があります。 CAST を使用して最初に値を TIME 型に変換し、次に CONVERT を使用して出力をフォーマットすると、より明確で正確な変換結果が保証されます。

以上がSQL Server DateTime を HH:MM:SS 時刻形式に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート