Hello Venkat,
Just an idea from my side..it may need data type casting and with slight adjustment in code it may work..
DROP PROCEDURE <procedure>;
CREATE PROCEDURE <procedure> LANGUAGE SQLSCRIPT AS
BEGIN
DECLARE v_var1 TIMESTAMP;
DECLARE v_temp BIGINT ;
DECLARE c_operator NVARCHAR(1) := '+';
DECLARE c_24hours TIME := '24:00:00';
DECLARE CURSOR c_cursor FOR SELECT record_number , created_date FROM table1 ORDER BY record_number
BEGIN
FOR cur_row as c_cursor DO
v_var1 = cur_row.CREATED_DATE|| c_operator || c_24hours ;
IF cur_row.RECORD_NUMBER <>v_temp THEN
execute immediate 'INSERT INTO SCHEMA.TABLE2 ( RECORD_NUMBER, CREATED_DATE ) -- this should pick the first record for each order_number and corresponding time stamp.
SELECT RECORD_NUMBER , CREATED_DATE FROM TABLE1 \
WHERE CREATED_DATE = '||cur_row.CREATED_DATE||'
AND RECORD_NUMBER ='||cur_row.RECORD_NUMBER||' ;
execute immediate 'INSERT INTO SCHEMA.TABLE2 ( RECORD_NUMBER , CREATED_DATE ) -- This should pick same record number but posted after after 24 hours based on the time stamp from 2nd record
SELECT RECORD_NUMBER , CREATED_DATE FROM TABLE1 \
WHERE CREATED_DATE > '||V_VAR1||'
AND RECORD_NUMBER ='||cur_row.RECORD_NUMBER||' ';
v_temp = cur_row.RECORD_NUMBER;
END FOR
END
Thanks
Siva
Message was edited by: Sivakumar Palaniswamy