본문 바로가기
Programming/DataBase

[Oracle]주민번호로 나이구하기

by 막이 2017. 1. 10.

주민번호로 현재 나이를 구하기. 

SELECT EXTRACT(YEAR FROM SYSDATE) -  
            (DECODE(SUBSTR(JUBUN,7,1),'1', '19','2','19','20') || SUBSTR(JUBUN,1,2)) +1  as "현재나이"
FROM  (SELECT [주민번호] JUBUN FROM DUAL);


EXTRACT - 원하는 데이터 형식을 추출한다.

DECODE - 조건으로 값을 설정하는것.

EXTRACT(YEAR FROM SYSDATE) : 현재 년도를 구한다.

 
주민번호에서 7번째 자리수를 뽑아서 그것이 1,2이면 1900년대생, 그외(3,4)이면 2000년대생임.