簡體   English   中英

如何在 SQL 服務器中比較具有相同 ID 的不同行之間的兩個日期時間值?

[英]How to compare two datetime values between different rows with the same ID in SQL Server?

我想比較來自共享參考號的不同行的兩個日期時間值。 具有相同引用的兩個日期時間值始終來自同一天,因此預期結果是一列,其中包含在每行的日期時間與表中具有相同引用的第一行之間經過的小時、分鍾和秒數.

問題是通常有兩個以上的行具有相同的引用,我總是需要從每行的日期時間中減去可用於該引用的最早日期時間。

我怎么能在 SQL 服務器中做到這一點?

此致

您只需使用 window function。 像這樣的東西:

select t.*,
       datediff(second, min(dt_col) over (partition by ref), dt_col) as time_in_seconds
from t;

您的問題似乎不是關於將結果格式化為時間,所以這只是將值返回為秒。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM