sql >> Databáze >  >> RDS >> Sqlserver

Výpočet časového rozdílu v SQL Server

Použijte Row_number k objednání vašeho stolu. Poté se připojte k předchozímu řádku a porovnejte

with cte as (
    select
        *, row_number() over (partition by [Emp ID] order by time) rn
    from
        Timecal
)

select
    a.[Emp ID], a.time, status = case when datediff(hh, b.time, a.time) < 5 then 0 else 1 end
from
    cte a
    left join cte b on a.[Emp ID] = b.[Emp ID] and a.rn - 1 = b.rn



  1. Problémy při používání Microsoft Access Runtime

  2. Zpracování souběžných aktualizací v režimu spánku

  3. Microsoft hexadecimální data

  4. Jaký je rozdíl PL/SQL API mezi Oracle Express Edition (XE) a Standard Edition (SE)?