473,513 Members | 7,598 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

how to generate date backward from end to start

3 New Member
how to generate date backward from end to start
like this

begin
-- loop to insert date backward
while
@end_date>=@start_Date
begin
INSERT INTO @tb_temp

from middle of the month to end of the month

serial date
------------------------------
1 19/03/2008
2 18/03/2008
3 17/03/2007
..............
19 01/03/2007



TNX
Jan 16 '08 #1
2 1124
deepuv04
227 Recognized Expert New Member
how to generate date backward from end to start
like this

begin
-- loop to insert date backward
while
@end_date>=@start_Date
begin
INSERT INTO @tb_temp

from middle of the month to end of the month

serial date
------------------------------
1 19/03/2008
2 18/03/2008
3 17/03/2007
..............
19 01/03/2007



TNX
Try this query..


INSERT INTO Table_Name(col1,col2,.....)
SELECT Col1,col2,col3.... FROM Table_Name2
WHERE Required_Condtions
ORDER BY Date_Column desc

thanks
Jan 16 '08 #2
gpspocket
3 New Member
help me put it in my code

Expand|Select|Wrap|Line Numbers
  1. DECLARE
  2.  
  3. @shifts_pattern TABLE ([PatternId] [int] IDENTITY(1,1 ) NOT NULL, [patternShiftValue] [int]NOT NULL)
  4.  
  5. declare
  6.  
  7. @I int
  8.  
  9. set
  10.  
  11. @i=0
  12.  
  13. while
  14.  
  15. @i < 5
  16.  
  17. BEGIN
  18.  
  19. INSERT INTO @shifts_pattern ([patternShiftValue] )
  20.  
  21. SELECT 1 UNION ALL
  22.  
  23. SELECT 2 UNION ALL
  24.  
  25. SELECT 3 UNION ALL 
  26.  
  27. SELECT 4 UNION ALL
  28.  
  29. SELECT 5 UNION ALL
  30.  
  31. SELECT 6 UNION ALL
  32.  
  33. SELECT 7 UNION ALL
  34.  
  35. SELECT 8
  36.  
  37. set
  38.  
  39. @i=@i+1
  40.  
  41. end
  42.  
  43. declare
  44.  
  45. @empList
  46.  
  47. TABLE
  48.  
  49. ( [empID] [numeric](18, 0) NOT NULL,[ShiftType] [int]NULL,[StartDate][datetime]NOT NULL,[EndDate] [datetime] NOT NULL) 
  50.  
  51. INSERT INTO
  52.  
  53. @empList ([empID], [ShiftType],[StartDate],[EndDate])
  54.  
  55. SELECT 111111,1,CONVERT(DATETIME, '01/01/2008', 103), CONVERT(DATETIME, '17/01/2008', 103)
  56.  
  57. -- create shifts table
  58.  
  59. declare
  60.  
  61. @empShifts
  62.  
  63. TABLE ( [empID] [numeric](18, 0) NOT NULL,[ShiftDate] [datetime]NOT NULL,[ShiftType] [int]NULL ,[StartDate] [datetime]NOT NULL,[EndDate] [datetime]NOT NULL) 
  64.  
  65. DECLARE
  66.  
  67. @StartDate datetime
  68.  
  69. DECLARE
  70.  
  71. @EndDate datetime
  72.  
  73. Declare
  74.  
  75. @current datetime
  76.  
  77. DEclare
  78.  
  79. @last_shift_id int
  80.  
  81. Declare
  82.  
  83. @input_empID int
  84.  
  85. ----------------- open list table for emp with curser
  86.  
  87. DECLARE
  88.  
  89. List_of_emp CURSOR FOR 
  90.  
  91. SELECT
  92.  
  93. emp.empId,emp.ShiftType,emp.StartDate,emp.EndDate FROM @empList emp
  94.  
  95. OPEN
  96.  
  97. List_of_emp
  98.  
  99. FETCH
  100.  
  101. List_of_emp INTO @input_empID , @last_shift_id ,@StartDate,@EndDate
  102.  
  103. SET @current = @StartDate
  104.  
  105. -----------------
  106.  
  107. -- loop on all emp in the list
  108.  
  109. while
  110.  
  111. @@Fetch_Status = 0
  112.  
  113. begin
  114.  
  115. -- loop to insert info of emp shifts
  116.  
  117. while
  118.  
  119. @current<=@EndDate 
  120.  
  121. begin
  122.  
  123. INSERT INTO @empShifts ([empID],[ShiftDate],[ShiftType],[StartDate] ,[EndDate])
  124.  
  125. select @input_empID ,@current,shift .patternShiftValue ,@StartDate,@EndDate
  126.  
  127. from @shifts_pattern as shift where PatternId=@last_shift_id+1 
  128.  
  129. -- if it is Friday and we are on one of the first shift we don't move to next shift type .
  130.  
  131. if (DATENAME(dw ,@current) = 'Friday' ) and
  132.  
  133. EXISTS(select ShiftType from @empShifts where ShiftDate=@current and empID= @input_empID and ShiftType in ( 1,2,3)) 
  134.  
  135. -- do nothing
  136.  
  137. --set @last_shift_id=@last_shift_id
  138.  
  139. print ('friday first shift')
  140.  
  141. ELSE
  142.  
  143. set @last_shift_id=@last_shift_id+ 1
  144.  
  145. set @current=DATEADD( d,1, @current)
  146.  
  147. end
  148.  
  149. FETCH
  150.  
  151. List_of_emp INTO @input_empID ,@last_shift_id,@StartDate,@EndDate
  152.  
  153. -- init of start date for the next emp
  154.  
  155. set
  156.  
  157. @current = @StartDate
  158.  
  159. end
  160.  
  161. CLOSE
  162.  
  163. List_of_emp
  164.  
  165. DEALLOCATE 
  166.  
  167. List_of_emp
  168.  
  169. select
  170.  
  171. empID,shiftDate,DATENAME (dw,shift.ShiftDate ), shiftType from @empShifts as shift
  172.  
  173. RETURN
Jan 16 '08 #3

Sign in to post your reply or Sign up for a free account.

Similar topics

8
9425
by: Gerrit Holl | last post by:
Posted with permission from the author. I have some comments on this PEP, see the (coming) followup to this message. PEP: 321 Title: Date/Time Parsing and Formatting Version: $Revision: 1.3 $...
2
2901
by: Andrew Grandison | last post by:
We are converting a legacy visual foxpro system to use a SQL back-end. A number of (existing DBF) tables currently have a zero-filled primary key eg. '000255' which is just an auto-incrementing...
30
3638
by: Dr John Stockton | last post by:
It has appeared that ancient sources give a method for Numeric Date Validation that involves numerous tests to determine month length; versions are often posted by incomers here. That sort of code...
5
7477
by: tsmith81 | last post by:
Ok. I have an ASP page that send data to a database. One of the fields is "Date" (no quotes). The form name is FrontPage_Form1. I would like the Date field to auto populate. So, I did some research...
1
2761
by: Robert Davis | last post by:
I would like to be able to create a recordset in MS Access 2000 that allows a macro to run and create a report for each ID that appears in the recordset. So I thought that I would use a scheduling...
6
2730
by: AA Arens | last post by:
Hi, I have a database with 2 main forms. Contacts and companies. I share the base with two others via LAN. On the companies form I have buttons to navigate throught the records (>400). We are...
82
4539
by: robert bristow-johnson | last post by:
here is a post i put out (using Google Groups) that got dropped by google: i am using gcc as so: $ gcc -v Using built-in specs. Target: i386-redhat-linux Configured with: ../configure...
0
1656
by: gpspocket | last post by:
help me -CURSOR backward insert from End Date > to Start Date how to insert dates from end to start like this SELECT 111111,1,CONVERT(DATETIME, '17/03/2008', 103), CONVERT(DATETIME,...
1
3160
by: vp.softverm | last post by:
hi all . Am facing problem with the date picker. when i click on date picker in a popup window. the date table is opened in the middle of the pop up window. and it is unable to scroll with...
0
7153
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
7373
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
7432
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
7094
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
7519
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
3230
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
3218
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
0
1585
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated ...
0
452
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.