Oracle deletes duplicate data and only keeps the most recent one (no nonsense, no verbosity version)

sql script:

DELETE 
FROM
	表名
WHERE
	ID IN (
	SELECT
		ID 
	FROM
		(
		SELECT
			eol.*,
			row_number ( ) over ( partition BY eol.重复的字段名 ORDER BY eol.日期字段 DESC ) rn 
		FROM
			表名 eol 
		WHERE  条件
		) 
	) 
WHERE
	rn != 1 
	)

Guess you like

Origin blog.csdn.net/m0_49605579/article/details/130370963