最初の行の値を列_timestamp
の2番目の行の値から差し引きたい(下記参照)。 _number
は私のデータの注文列です。SQL - 減算演算子のオペランドデータ型datetime2は無効
と差分と呼ばれる新しい列に結果を入れました。私は次のクエリで試してみました。
use dbtest
select t2._number, t2._timestamp,
coalesce(t2._timestamp -
(select t1._timestamp from dbo.tcp t1 where t1._number = t2._number + 1), t2._timestamp) as diff
from dbo.tbl t2
私は次のエラーが発生しています。
Msg 8117, Level 16, State 1, Line 4
Operand data type datetime2 is invalid for subtract operator.
ヒントがあれば幸いです。私は巨大なレコードを持っており、列全体に自動的に適用したいと思います。SQL Sever 2008を使用しています。
はDATEDIFF機能https://msdn.microsoft.com/en-us/library/ms189794.aspx – Serg
使用を参照してください。 datediff https://msdn.microsoft.com/en-us/library/ms189794.aspx 2行またはすべてのレコードのみが必要ですか? – McNets
いいえ、すべてのレコード(約300,000行)に適用したい –