Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

टाइमस्टैम्प कॉलम में 30 मिनट से अधिक अंतराल का पता लगाएं

सामान्य तालिका अभिव्यक्ति का उपयोग करके आसान समाधान। यदि आपके पास कम से कम 1000 पंक्तियाँ हैं, तो कर्सर के प्रदर्शन से तुलना करें।

create table #tmp (Dt datetime)

insert into #tmp values 
('2015-07-15 15:01:21'),
('2015-07-15 15:17:44'), 
('2015-07-15 15:17:53'), 
('2015-07-15 15:18:34'), 
('2015-07-15 15:21:41'), 
('2015-07-15 15:58:12'), 
('2015-07-15 15:59:12'), 
('2015-07-15 16:05:12'),
('2015-07-15 17:02:12')

;with tbl as (
select dt, row_number() over(order by dt) rn
from #tmp
)
select t1.dt [from],t2.dt [to], datediff(minute,t1.dt,t2.dt) gap
from tbl t1 
inner join tbl t2 on t1.rn+1 = t2.rn
where datediff(minute,t1.dt,t2.dt) >30


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. जांचें कि दिनांक SQL में अतिव्यापी है या नहीं

  2. एसक्यूएल GUID बनाम पूर्णांक

  3. संदेश 203, स्तर 16, राज्य 2, मान्य पहचानकर्ता नहीं है

  4. SQL सर्वर में अलर्ट और ऑपरेटरों का उपयोग करना

  5. SQLAlchemy ट्रंकिंग VARCHAR (MAX)