SQL Server で同等の UNIX_TIMESTAMP() を作成する
MySQL の UNIX_TIMESTAMP() 関数を使用すると、ユーザーは日付と時刻の値を数値に変換できますUnix エポック (1970-01-01) からの秒数00:00:00 UTC)。 SQL Server 2008 で同様の機能を実現するには、次のような単純な計算を使用できます。
SELECT DATEDIFF(s, '1970-01-01 00:00:00', DateField);
この計算では、Unix エポックと指定された DateField の間の秒数が減算されます。たとえば、日付「2022-12-31 12:00:00」を Unix タイムスタンプに変換するには、次のコマンドを実行します。
SELECT DATEDIFF(s, '1970-01-01 00:00:00', '2023-01-01 12:00:00');
これにより、結果は 1672531200 になります。これは秒数を表します。
ただし、ミリ秒の精度が必要な場合 ( SQL Server 2016/13.x 以降)、次の計算を使用できます:
SELECT DATEDIFF_BIG(ms, '1970-01-01 00:00:00', DateField);
この計算は、Unix エポックからのミリ秒数をより正確に返します。
以上がSQL Server で同等の UNIX_TIMESTAMP() を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。