チャレンジ:
Unix タイムスタンプを含む Excel スプレッドシートからデータをインポートするには、SQL Server 内で人間が判読できる日付と時刻の形式に変換する必要があります。 これには、Unix タイムスタンプが設定された 3 つの列の変換が含まれます。
解決策:
SQL Server DATEADD
関数は、解決策を提供します。この関数は、指定された時間間隔 (秒単位で測定) を開始日に追加します。 Unix タイムスタンプの場合、基準日は 1970 年 1 月 1 日です。
この変換の DATEADD
関数の構文は次のとおりです。
<code class="language-sql">DATEADD(ss, unix_timestamp, '19700101')</code>
ここで、unix_timestamp
は Unix タイムスタンプ値を表し、「19700101」は YYYYMMDD 形式の基準日付です。 結果は DATETIME
データ型です。 CAST
または CONVERT
を使用してさらにフォーマットすると、出力を調整できます。
例:
Unix タイムスタンプを保持する列「EpochTimestamp」を持つ「Customers」という名前のテーブルについて考えてみましょう。 新しい列の変換されたタイムスタンプでテーブルを更新するには、次のクエリを使用します:
<code class="language-sql">UPDATE Customers SET SQLServerTimestamp = DATEADD(ss, EpochTimestamp, '19700101');</code>
このクエリは、元の Unix タイムスタンプを、'SQLServerTimestamp' 列内の SQL Server DATETIME
の同等のタイムスタンプに置き換えます。 その後、CAST
または CONVERT
を使用して、表示やさらなる処理に必要な日付の書式を設定できます。
以上がSQL Server で Unix タイムスタンプを人間が判読できる日付に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。