Pseudo Column (의사 결정 컬럼)
- ROWNUM : Top-N 분석 시 사용
1부터 시작
- ROWID : 물리적 Row 주소값
* ROWID 예시 :
ROWID EMPLOYEE_ID LAST_NAME
------------------ ----------- -------------------------
AAAETOAAEAAAAELAAL 149 Zlotkey
AAAETOAAEAAAAELAAM 174 Abel
AAAETOAAEAAAAELAAN 176 Taylor
AAAETOAAEAAAAELAAO 178 Grant
AAAETOAAEAAAAELAAP 200 Whalen
AAAETOAAEAAAAELAAQ 201 Hartstein
AAAETOAAEAAAAELAAR 202 Fay
AAAETOAAEAAAAELAAS 205 Higgins
AAAETOAAEAAAAELAAT 206 Gietz
※ 6 3 6 3으로 끊으면 된다.
AAAEY/ AAE AAAAFb AAT
6 3 6 3
Object# Field# Block# Row#
select min(rowid), employee_id, last_name
from t1
group by employee_id, last_name
order by 2;
※ group by절에는 group function을 제외한 나머지 컬럼이 반드시 들어가야 한다.
* 중복을 제거!
방법 1 :
delete from t1
where rowid not in (select(min(rowid) from t1
group by employee_id);
방법 2 : 별칭을 주어 rowid 최소값보다 큰 것들을 제거
delete from t1 a
where rowid > (select min(rowid) from t1 b
where a.employee_id = b.employee_id);
* mission! 급여 상위 6 ~ 10위를 추출하라.
'스마트웹&콘텐츠 개발자 과정 > Oracle' 카테고리의 다른 글
Workshop II 남은 부분 수업 (0) | 2018.07.24 |
---|---|
admin 수업 마지막 (0) | 2018.07.03 |
admin 수업 (0) | 2018.06.22 |
Admin 수업 - 백업 실습 (0) | 2018.06.21 |
admin (0) | 2018.06.20 |