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

SQL सर्वर डेटाटाइम के साथ किसी स्थान पर कुल समय की गणना करना

आपको जो करने की आवश्यकता है, वह उन स्थानों के बीच दिनांक अंतर की गणना करना है जहां इकाई ने समय बिताया था, जैसा कि नीचे दिया गया है

SELECT
*
FROM MyTable

परिणाम मान

Starttime               Endtime                 LocationID  EntityID
2014-09-23 14:07:43     2014-09-23 16:07:43     2           2
2014-09-23 14:09:03     2014-09-23 20:09:03     3           2
2014-09-23 14:09:51     2014-09-23 21:09:51     8           2
2014-09-23 14:15:10     2014-09-23 21:15:10     8           3
2014-09-23 14:15:16     2014-09-23 17:15:16     8           3
2014-09-23 14:15:23     2014-09-23 22:15:23     4           3
2014-09-23 14:15:32     2014-09-23 15:15:32     5           3
2014-09-23 14:06:26     2014-09-23 14:06:26     1           2

वांछित परिणाम प्राप्त करने के लिए नीचे दी गई क्वेरी का उपयोग करें

SELECT
    DATEDIFF(MINUTE, MIN(Starttime), MAX(Endtime)) TotalTimeSpentInMinutes,
    LocationID
FROM MyTable
WHERE EntityID = 2
GROUP BY LocationID

परिणाम मान होंगे

TotalTimeSpentInMinutes LocationID
0                       1
120                     2
360                     3
420                     8


  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. ओवरलैपिंग दिनांक अंतराल मर्ज करें

  3. एक गतिशील क्वेरी के साथ तालिका चर में कैसे सम्मिलित करें?

  4. SQL LocalDB से कनेक्ट करने में असमर्थ

  5. सोमवार को 2 तिथियों के बीच खोजें