Q. How to remove duplicates from a file using SQL?

A. 1.) 1st way: DELETE FROM TESTFILE A WHERE RRN(A) > (SELECT MIN(RRN(B)) FROM TESTFILE B WHERE A.F00 = B.F00 AND A.F01 = B.F01 AND A.F02 = B.F02 AND A.F03 = B.F03 AND A.F04 = B.F04 AND A.F05 = B.F05 AND A.F06 = B.F06 AND A.F07 = B.F07 AND A.F08 = B.F08 AND A.F09 = B.F09) 2.) Write an RPG program. 01 dcl-f TESTFILE ; 02 dcl-f TESTLF usage(*output) rename(TESTFILER:TESTLFR) ; 03 dou %eof(TESTFILE) ; 04 read TESTFILER ; 05 write(e) TESTLFR ; 06 enddo ; 07 *inlr = *on ; 3.) Create a similar file and insert the distinct data into it. INSERT INTO TESTFILE2 (SELECT DISTINCT * FROM TESTFILE) ; Reference: https://www.rpgpgm.com/2016/02/removing-duplicate-records-from-file.html