MSSQL
mssql- 주민번호로 나이구하기
이빛나리
2012. 1. 11. 16:32
Select cast(year(GetDate()) As Integer) -
cast(SubString((cast When SubString(주민등록번호 13자리,7,1) <= '2' Then '19' + 주민등록번호 13자리
Else '20' + 주민등록번호 13자리 End),1,4) As Integer) as mjumin
Ex) Select Cast(Year(GetDate()) As Integer) -
Cast(SubString((Case When SubString('8812251111111',7,1) <= '2' Then '19' + '8812251111111'
Else '20' + '8812251111111' End),1,4) As Integer) as mjumin
쿼리실행 결과 = 24
select ((year(getdate())+1) - cast(('19' + substring('주민등록번호 6자리', 1, 2)) as int))
Ex) select ((year(getdate())+1) - cast(('19' + substring('881225', 1, 2)) as int))
쿼리실행 결과 = 25
▶ 주민번호로 세대 구하기
검색된 나이를 10으로 나누면, 몫으로 해당하는 사람의 세대를 구할수있다.
select ((year(getdate())+1) - cast(('19' + substring('881225', 1, 2)) as int))/10
쿼리실행 결과 = 2
88년생 25살 = 20 대