Skip to main content

Flashback Table and Update the data from temporary table

--CREATE FLASHBACK TABLE
CREATE TABLE TABLE_NAME_TEMP AS
SELECT *
FROM TABLE_NAME AS OF TIMESTAMP TO_TIMESTAMP('YYYY-MM-DD HH:MI:SS', 'YYYY-MM-DD HH:MI:SS');

--UPDATE FROM FLASHBACK TABLE
UPDATE TABLE_NAME
SET COLUMN_NAME   = 'VALUE'
WHERE COLUMN_NAME = 'VALUE'
AND ID_COLUMN    IN
  (SELECT ID_COLUMN
  FROM TABLE_NAME_TEMP
  WHERE COLUMN_NAME = 'VALUE'
  AND COLUMN_NAME   = 'VALUE'
  );

Comments

Popular posts from this blog

SQL Blocking query

SELECT s.session_id, r.status, r.blocking_session_id 'Blk by' , r.wait_type, wait_resource, r.wait_time / ( 1000.0 ) 'Wait Sec' , r.cpu_time, r.logical_reads, r.reads, r.writes, r.total_elapsed_time / ( 1000.0 ) 'Elaps Sec' , Substring (st. TEXT ,(r.statement_start_offset / 2 ) + 1 , (( CASE r.statement_end_offset WHEN - 1 THEN Datalength (st. TEXT ) ELSE r.statement_end_offset END - r.statement_start_offset) / 2 ) + 1 ) AS statement_text, Coalesce ( Quotename ( Db_name (st.dbid)) + N '.' + Quotename (Object_sch...

Split String which has space and replace spaces with "/"

Sample String "ABCD123 ETS, NM" UPDATE TABLE_NAME SET COLUMN_NAME = SUBSTR( 'ABCD123 ETS, NM' , 0 , 4 ) || REPLACE ((SUBSTR(( REPLACE ( 'ABCD123 ETS, NM' , ', ' , '/' )), 5 ,INSTR(( REPLACE ( 'ABCD123 ETS, NM' , ', ' , ',/' )), ',' , 1 ) - 4 )), ' ' , '/' ) || REPLACE (SUBSTR( 'ABCD123 ETS, NM' ,INSTR( 'ABCD123 ETS, NM' , ',' , 1 ) + 2 ), 'NM' , 'NEW MEXICO' ) WHERE CONDITIONS;