正確なTIMESTAMP値を取得したい場合は、SYSDATETIME()を使う
SQLServerで日時を取得したい場合は、通常GETDATE()関数を使えば事足ります。
ですが、データ更新の正確なTIMESTAMP値を取得する場合は、SYSDATETIME()関数のほうがより厳密な値が取得できます。
実際にSQLで実行してみると分かります。
select SYSDATETIME () as SYSDATETIME使用時, GETDATE() as GETDATE使用時
SYSDATETIME使用時 | GETDATE使用時 |
---|---|
2013-10-29 11:22:45.7078392 | 2013-10-29 11:22:45.707 |
SYSDATETIME()を使うと、ミリ秒以下が6桁で取得できます。
GETDATE()でもほとんど問題ないですが、
アクセス数が非常に多いシステムの場合には、念のためSYSDATETIME()を使っておいたほうがよさそうです。
なお、このSYSDATETIME()関数ですが、SQLServer 2008以降でないと使えませんので注意して下さい。
GETDATE()はSQLServer 2005でも使用できます。
== ランキングに参加しています。ぜひクリックお願いします ==
コストコでモバイルバッテリー買いました SQL ServerのLike指定に注意