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

tsql:दी गई तिथि सीमा के बीच प्रत्येक माह की अंतिम तिथि कैसे प्राप्त करें

आप CTE का उपयोग कर सकते हैं महीने के सभी अंतिम दिनों को निर्धारित सीमा के भीतर प्राप्त करने के लिए

Declare @Start datetime
Declare @End datetime

Select @Start = '20130808'
Select @End = '20131111'
;With CTE as
(
Select @Start  as Date,Case When DatePart(mm,@Start)<>DatePart(mm,@Start+1) then 1 else 0 end as [Last]
UNION ALL
Select Date+1,Case When DatePart(mm,Date+1)<>DatePart(mm,Date+2) then 1 else 0 end from CTE
Where Date<@End
)

Select * from CTE
where [Last]=1   OPTION ( MAXRECURSION 0 )


  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. SQL सर्वर 2005/2008 समूह डायनेमिक SQL का उपयोग किए बिना पैरामीटर के साथ कथन द्वारा?

  3. SQL सर्वर लेनदेन लॉग, भाग 1:लॉगिंग मूल बातें

  4. SQL सर्वर में ट्रिगर के बजाय SCOPE_IDENTITY खो देता है?

  5. Transact SQL में NOT EXISTS के विपरीत EXCEPT का उपयोग कब करें?