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

SQL - मैं मौजूदा डेटासेट में दिनांक सीमाओं के आधार पर प्रत्येक माह के लिए पंक्तियाँ कैसे उत्पन्न करूँ?

मुझे पूर्णांकों की सूची बनाकर और फिर तारीखों को बढ़ाने के लिए इसका उपयोग करके इन समस्याओं से संपर्क करना सबसे आसान लगता है। यहां एक उदाहरण दिया गया है:

with nums as (
      select 0 as n
      union all
      select n + 1 as n
      from nums
      where n < 11
     )
select rowid, datestart, dateend,
       year(dateadd(month, n.n, datestart)) as yr,
       month(dateadd(month, n.n, datestart)) as mon
from table t join
     nums n
     on dateadd(month, n.n - 1, datestart) <= dateend;


  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 कनेक्शन त्रुटि, रिबूट पर सुधार, 3-5 दिनों के बाद वापस आता है (ASP.NET)

  2. लिनक्स से SQL सर्वर बल्क इंसर्ट

  3. SQL सर्वर (T-SQL) में कॉलम का डेटा प्रकार कैसे बदलें

  4. कैसे ठीक करें "संबंधित विभाजन फ़ंक्शन योजना में उल्लिखित फ़ाइल समूहों की तुलना में अधिक विभाजन उत्पन्न करता है" संदेश 7707 SQL सर्वर में

  5. SQL सर्वर 2005 और बाद के संस्करण के लिए एक अद्वितीय डेटाबेस पहचानकर्ता प्राप्त करना