ホームページ > データベース > mysql チュートリアル > SQL Server で MySQL の UNIX_TIMESTAMP() 関数をレプリケートするにはどうすればよいですか?

SQL Server で MySQL の UNIX_TIMESTAMP() 関数をレプリケートするにはどうすればよいですか?

DDD
リリース: 2024-12-23 09:20:14
オリジナル
176 人が閲覧しました

How to Replicate MySQL's UNIX_TIMESTAMP() Function in SQL Server?

SQL Server での UNIX_TIMESTAMP のクエリ

MySQL の UNIX_TIMESTAMP() 関数は、日時値を対応する UNIX タイムスタンプに変換するための簡潔な方法を提供します。ただし、SQL Server で同様の機能を実装するには、工夫が必要になる場合があります。 SQL Server 2008 以降を実行しているシステムの場合、この制限を克服する方法は次のとおりです。

解決策 1: 1970 年より前の日付を無視する

1970 年より前の日付の場合は、SQL Server の DATEDIFF 関数を次のように利用できます。

SELECT DATEDIFF(s, '1970-01-01 00:00:00', DateField)
ログイン後にコピー

この式は、指定された DateField から「1970-01-01 00:00:00」ベースラインを減算し、事実上、MySQL の UNIX_TIMESTAMP() と同様の結果を達成します。

解決策 2: SQL Server 2016 の精度と後で

SQL Server 2016 以降で使用できるミリ秒までの精度を高めるには、DATEDIFF_BIG 関数を使用します。

SELECT DATEDIFF_BIG(ms, '1970-01-01 00:00:00', DateField)
ログイン後にコピー

このバリエーションでは、UNIX タイムスタンプでミリ秒レベルの粒度が提供されます。変換。

以上がSQL Server で MySQL の UNIX_TIMESTAMP() 関数をレプリケートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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