כל התאריכים נמצאים כבר במערכת ההפעלה!
לשם מה את צריכה מידע מיותר במסד הנתונים?
אני מציע לחשוב על תכנון האפליקציה שלך, על פני השטח הצורך הזה יכול להצביע על ארכיטקטורה לא טובה.
בכל מקרה אם זה מה שאת רוצה אז הדרך היא פשוטה
* בכל מערכת צריכה להיות טבלת מספרים מוכנה. אני אסתמך על טבלה זו (לשם זה היא נמצאת במערכת כטבלת עזר!)
ייצור טבלה של תאריכים והכנסת מליון רשומות אמור להיות פעולה מהירה מאוד, במחשב חלש מאוד וירטואלי, זה לקח לי 344 אלפיות שנייה:
SQL Server parse and compile time:
CPU time = 0 ms, elapsed time = 0 ms.
SQL Server Execution Times:
CPU time = 297 ms, elapsed time = 344 ms.
(1000000 row(s) affected)
והנה השאילתה שאסור להשתמש בה, ומצביעה על תכנון לקוי כניראה:
select top 1000000 DATEADD(day,N,CONVERT(DATE,getdate())) as MyDate
into NewDatesTable
from _ArielyAccessoriesDB.dbo.Numbers