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

दिनांक सीमा के भीतर मासिक वेतन तिथियां उत्पन्न करने के लिए एसक्यूएल क्वेरी

आप निम्न के रूप में कर सकते हैं:

DECLARE @SelectedDate DATETIME = '2016.01.30'
SELECT
     DATEADD(DAY, -1 - (DAY(EOMONTH(@SelectedDate)) - DAY(@SelectedDate)),  DATEADD(MONTH, v.m, DATEFROMPARTS(YEAR(@SelectedDate), 1, 1)))   
FROM
    (VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9), (10), (11), (12)) AS v(m)

महीने के खत्म होने में कितने दिन बचे हैं. पाए गए दिनों की संख्या अन्य महीनों से हटा दी जाती है।

DAY(EOMONTH(@SelectedDate) (31) - DAY(@SelectedDate) (30) =left days (1)

परिणाम:

2016-01-30
2016-02-28
2016-03-30
2016-04-29
2016-05-30
2016-06-29
2016-07-30
2016-08-30
2016-09-29
2016-10-30
2016-11-29
2016-12-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. फंक्शन स्प्लिट स्ट्रिंग को दशमलव में?

  2. टी-एसक्यूएल में समय ऑफसेट के साथ पार्स दिनांक समय

  3. एक बड़ी डील :SQL Server 2016 सर्विस पैक 1

  4. क्या कोई विदेशी कुंजी स्वचालित रूप से एक अनुक्रमणिका बनाती है?

  5. SQLServer 2005 फ़ंक्शन में डायनेमिक SQL निष्पादित करना