-- CREATE TABLE dup_test_del_list ASSELECT'#REMAIN' STATUS, d1.*, ROWID
FROM dupl_test d1
WHERE ROWID = (
-- ここで重複しているもので、残すレコードを抽出(ROWIDが一番小さなもの)SELECTMIN(ROWID) FROM dupl_test d2
WHERE
d1.dupl_col = d2.dupl_col
AND D1.log_data = d2.log_data
HAVINGCOUNT(*) > 1 -- 重複しているレコードグループの選別
)
UNION ALL
SELECT'DELETE' STATUS, d1.*, ROWID
FROM dupl_test d1
WHERE ROWID > (
-- ここで削除するレコードを抽出SELECTMIN(ROWID) FROM dupl_test d2
WHERE
d1.dupl_col = d2.dupl_col
AND d1.log_data = d2.log_data
)
ORDER BY 2,3,1