-- 합치는게 아니라 종류코드가 제일 큰 행을 뽑으면 될꺼 같아요. WITH A( 이름, 종류코드, 용도, 종류, 구입일) as ( SELECT '노란파프리카', '100', '볶음', '채소', '2022-01-01' FROM DUAL UNION ALL SELECT '초록파프리카', '101', '볶음', '채소', '2022-01-01' FROM DUAL UNION ALL SELECT '파프리카', '102', '볶음', '채소', '2022-01-01' FROM DUAL ) SELECT * FROM ( SELECT A.* , ROW_NUMBER() OVER(PARTITION BY 용도, 종류, 구입일 ORDER BY 종류코드 DESC ) RN FROM A ) TBL WHERE RN = 1