こんにちは、datetime2 型の 2 つの列の差を計算しようとしています。
ただし、SQL サーバー (2012) は次のことを好まないようです。
select cast ('2001-01-05 12:35:15.56786' as datetime2)
- cast ('2001-01-01 23:45:21.12347' as datetime2);
Msg 8117, Level 16, State 1, Line 2
Operand data type datetime2 is invalid for subtract operator.
日時型にキャストすると機能するようになりました。
select cast (cast ('2001-01-05 12:35:15.56786' as datetime2) as datetime)
- cast (cast ('2001-01-01 23:45:21.12348' as datetime2) as datetime);
1900-01-04 12:49:54.443
ただし、datetime にキャストすると精度が失われます (上記の 3 桁の精度に注意してください)。この場合、実際には小数点以下 5 桁すべてが必要です。2 つの datetime2 列の間の間隔を取得し、小数点以下 5 桁の精度を維持する方法はありますか? ありがとう。