table1 테이블에서 column1 컬럼의 중복을 제외한 결과를 SELECT 할 경우는 단순히 DISTINCT만 사용하면 된다.
SELECT DISTINCT column1 FROM table1 WHERE ...조건들... ORDER BY column1
위의 경우는 SELECT 시 컬럼이 두 개 이상이면 각각의 컬럼을 모두 중복체크한 결과가 출력된다.
특정 컬럼의 중복만 제외시키고 나머지 컬럼들은 그대로 불러와야 할 경우는
중복되는 레코드를 그룹화하고 중복데이터중 정렬된 첫레코드만 조건절에 걸어서 뽑아오게 할 수 있다.
즉, column1, column2, column3, ... 이 중에서 column1만 중복을 체크해서 제거 할 경우에는 ROWID를 사용하면 된다.
SELECT column1, column2, column3, ... FROM table1
WHERE ...조건들... AND ROWID IN (SELECT MAX(ROWID) FROM table1 GROUP BY column1)
위의 경우에서 MAX()를 사용하면 중복데이터 중 역정렬된 첫 레코드를 가져오게 되고 MIN()을 사용하면 순정렬된 첫 레코드를 가져오게 된다.
[출처] 오라클 SELECT 중복 제외 시키기|작성자 Developer
'공부' 카테고리의 다른 글
아파치 다이렉티브 (0) | 2017.08.07 |
---|---|
쿼리 - 중복데이터가 있는 경우 중복데이터 제거 (0) | 2017.06.09 |
모바일에서 jQueryUI 사용 (0) | 2016.06.02 |
MySQL Workbench 스키마(데이터베이스) 만들기 & 사용자 계정 생성, 권한 부여 방법 (0) | 2016.05.27 |
ajax 동기 방식 방법 (데이터가 호출되고 다음 코드 실행) (0) | 2016.05.27 |