p79 5번 식이 이해가안가서요
d26=if(mod(mid(b26,8,1),2)=1."남자","여자)
e26=date(if(mid(b26,8,1)>"2","20","19")&mid(b26,1,2)mid(b26,3,2),mid(b26,5,2))
이두가지 식에서 하나하나가 의미하는바를 설명해주세요~
1.
mod(나누고자하는값, 나눌값)
으로 2로 값을 나누겠다는 뜻입니다.
주민번호 8번째 자리의 값이
1 과 3이면 2로 나눴을때 나머지가 1이 되므로 "남자" 가 되고
2와 4이면 2로 나눴을때 나머지가 0이 되므로 1이 아닌것이 되어 거짓값인 "여자" 가 나오게 되는 것이죠.
mid 함수는 주민등록번호에서 8번째 자리의 값을 구하기 위한것입니다.
2.
DATE(IF(MID(B26,8,1)>"2","20","19")&MID(B26,1,2),MID(B26,3,2),MID(B26,5,2))
date(년,월,일)
입니다.
IF(MID(B26,8,1)>"2","20","19")&MID(B26,1,2),
까지는 년을 구하기 위한 것입니다.
mid 에서 나온 값이 2 초과 이면 즉 3이나 4이면 "20" 을 붙이고
2초과가 아니면 즉 1,2 이면 "19" 를 붙입니다.
이것은 주민등록번호에서 - 다음 자리 즉 8번째 자리가 1,2 이면 19~ 년 도 생이고
3,4 이면 2000 년도 라는 것이죠.
그래서 if 에서 나온 값 20 에 MID(B26,1,2), 에서 나온 값 04 를 연결 하여 2004 로 표시 하기 위한 것입니다.
850302 라면 1982 가 되겠죠.
MID(B26,3,2),MID(B26,5,2))
세번째 mid 는 850302 에서 03 즉 월을 구하기 위한 것이고
네번째 mid 는 850302 에서 02 즉 일을 구하기 위한 것입니다.
이렇게 date 함수에서 필요한 년,월,일 값을 구하기 위해 mid 가 4번 사용된 것이죠.
좋은 하루 되세요.
-
*2013-08-09 08:08:55
1.
mod(나누고자하는값, 나눌값)
으로 2로 값을 나누겠다는 뜻입니다.
주민번호 8번째 자리의 값이
1 과 3이면 2로 나눴을때 나머지가 1이 되므로 "남자" 가 되고
2와 4이면 2로 나눴을때 나머지가 0이 되므로 1이 아닌것이 되어 거짓값인 "여자" 가 나오게 되는 것이죠.
mid 함수는 주민등록번호에서 8번째 자리의 값을 구하기 위한것입니다.
2.
DATE(IF(MID(B26,8,1)>"2","20","19")&MID(B26,1,2),MID(B26,3,2),MID(B26,5,2))
date(년,월,일)
입니다.
IF(MID(B26,8,1)>"2","20","19")&MID(B26,1,2),
까지는 년을 구하기 위한 것입니다.
mid 에서 나온 값이 2 초과 이면 즉 3이나 4이면 "20" 을 붙이고
2초과가 아니면 즉 1,2 이면 "19" 를 붙입니다.
이것은 주민등록번호에서 - 다음 자리 즉 8번째 자리가 1,2 이면 19~ 년 도 생이고
3,4 이면 2000 년도 라는 것이죠.
그래서 if 에서 나온 값 20 에 MID(B26,1,2), 에서 나온 값 04 를 연결 하여 2004 로 표시 하기 위한 것입니다.
850302 라면 1982 가 되겠죠.
MID(B26,3,2),MID(B26,5,2))
세번째 mid 는 850302 에서 03 즉 월을 구하기 위한 것이고
네번째 mid 는 850302 에서 02 즉 일을 구하기 위한 것입니다.
이렇게 date 함수에서 필요한 년,월,일 값을 구하기 위해 mid 가 4번 사용된 것이죠.
좋은 하루 되세요.