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

SQL का उपयोग करके लगातार दिनांक सीमाओं का पता लगाएं

कोई जुड़ने या पुनरावर्ती CTE की आवश्यकता नहीं है। मानक अंतराल-और-द्वीप समाधान (मान माइनस row_number) द्वारा समूहित करना है, क्योंकि यह लगातार अनुक्रम के भीतर अपरिवर्तनीय है। प्रारंभ और समाप्ति तिथि समूह के केवल MIN() और MAX() हैं।

WITH t AS (
  SELECT InfoDate d,ROW_NUMBER() OVER(ORDER BY InfoDate) i
  FROM @d
  GROUP BY InfoDate
)
SELECT MIN(d),MAX(d)
FROM t
GROUP BY DATEDIFF(day,i,d)


  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 सर्वर त्रुटि 206:संकार्य प्रकार संघर्ष

  2. जांचें कि लिंक किए गए सर्वर पर RPC आउट सक्षम है या नहीं

  3. SQL सर्वर 2016:एक डेटाबेस पुनर्स्थापित करें

  4. डेटाबेस मेल खाता अपडेट करें (SSMS)

  5. कैसे OBJECTPROPERTYEX () SQL सर्वर में काम करता है