'오라클 주민번호 검증'에 해당되는 글 1건

  1. 2012.05.08 오라클연습

오라클연습

2012. 5. 8. 18:39

--(반장님꺼)
-- 대상테이블 : 회원정보테이블
-- 조회컬럼   : 회원아이디 Id, 회원이름 성명, 회원성별 성별, 회원의 결혼유무(회원기념일의 데이터를근거로)를
--              유추해서 출력(decode이용) 결혼유무, 회원의 메일서버계정은 'naver.com'으로 일괄변경,
--              회원의 주민번호1을 이용해 'yy년도mm월dd일출생'으로 출력, 주민번호2의 2번째인덱스에서 4개로
--              출생신고지역코드 출력,
--              주민번호의 유효성검사후 '유효' 또는 '무효' 출력
--              예시) 123456-1234563 =>  1 2 3 4 5 6 1 2 3 4 5 6     3(매직넘버)
--                                     *2 3 4 5 6 7 8 9 2 3 4 5
--                                                   --------------------
--                                                     2+6+12+.................+30 = 206   => 206을 11로 나눈 나머지를 11에서 빼기하고, 그 수를 다시
--                                                                                            10으로 나눈 나머지가 주민번호 마지막수와 일치하면 유효주민번호
-- 정렬       : 회원아이디 내림차순
select * from member;
select (to_number(substr(mem_regno1,1,1))*2) from member;
select mem_id id,mem_name 성명,
       case when substr(mem_regno2,1,1)=1 then '남'
       else '여'
       end 성별,
       case when substr(mem_memorial,1,2)='결혼'  then '기혼'
       when substr(mem_memorial,1,2)='아내' then '기혼'
       when substr(mem_memorial,1,2)='남편' then '기혼'
       else '미혼'
       end 결혼유무,
       regexp_substr(mem_mail,'[a-zA-Z0-9]+')||'@naver.com' 메일,
       substr(mem_regno1,1,2)||'년도'||substr(mem_regno1,3,2)||'월'||substr(mem_regno1,5,2)||'일출생' 생년월일,
       decode(
       ( mod(11-mod(
       (to_number(substr(mem_regno1,1,1))*2)+(  to_number(substr(mem_regno1,2,1))*3 )+(  to_number(substr(mem_regno1,3,1))*4  )+
       ( to_number(substr(mem_regno1,4,1))*5  )+(  to_number(substr(mem_regno1,5,1))*6  )+( to_number(substr(mem_regno1,6,1))*7 )+
       ( to_number(substr(mem_regno2,1,1))*8 )+( to_number(substr(mem_regno2,2,1))*9 )+( to_number(substr(mem_regno2,3,1))*2 )+
       ( to_number(substr(mem_regno2,4,1))*3 )+( to_number(substr(mem_regno2,5,1))*4 )+( to_number(substr(mem_regno2,6,1))*5 )
       ,11),10)  )
       ,to_number(substr(mem_regno2,7,1)) ,'적합','부적합') 주민번호적합여부
from member order by 1;

 

--(반장님꺼)
--대상테이블 : 회원정보테이블, 장바구니테이블
--대상컬럼   : 회원아이디 아이디, 회원이름 성명, 구매번호 구매번호,
--            구매번호에서 구매년도 추출 구매년,
--            구매금액의합 (구매수량*판매가) 널인경우 0으로해서 천단위
--           출력형태, 원화표시 출력 구매금액
--조건      : 회원아이디가 'r001'이고 회원의 주소가 '대전',
--           구매금액은 50000000 이하
--정렬      : 회원아이디 오름차순
select substr(cart_no,1,4) 구매년 from cart;

nvl(to_char(sum(cart_qty*prod_sale),'999,999,999,999,999.00L'),0) 구매금액의합
select * from member;
select * from cart where cart_member='r001';
select * from prod;
select mem_id 아이디,mem_name 성명,cart_no 구매번호,
      substr(cart_no,1,4) 구매년,
       nvl(to_char(sum(cart_qty*prod_sale),'999,999,999,999,999L'),0) 구매금액의합
from member left outer join cart on(mem_id=cart_member)
    left outer join prod on(prod_id=cart_prod)
where mem_add1 like '대전%'
      and mem_id='r001'
group by mem_id,mem_name,cart_no
having sum(cart_qty*prod_sale)<=50000000
order by 1;

이 글은 스프링노트에서 작성되었습니다.


'오라클' 카테고리의 다른 글

SYS_CONNECT_BY_PATH  (0) 2012.07.26
오라클 구조 보기 sql 문 (desc)  (0) 2012.06.07
sqlplus에서 셀렉트 update문 가져 오기.  (0) 2012.05.08
OCP정리  (0) 2012.05.08
오라클(ORACLE)  (0) 2012.05.08
Posted by 사라링

BLOG main image
.. by 사라링

카테고리

사라링님의 노트 (301)
JSP (31)
J-Query (41)
JAVA (24)
VM-WARE (0)
디자인패턴 (1)
스크랩 (0)
스트러츠 (3)
안드로이드 (11)
오라클 (45)
우분투-오라클 (1)
이클립스메뉴얼 (6)
스프링3.0 (23)
자바스크립트 (10)
HTML5.0 (17)
정보처리기사 (1)
기타(컴퓨터 관련) (1)
문제점 해결 (3)
프로젝트 (2)
AJAX (4)
하이버네이트 (3)
트러스트폼 (11)
Jeus (2)
재무관리(회계) (5)
정규식 (5)
아이바티스 (8)
취미 (2)
소프트웨어 보안 관련모음 (0)
정보보안기사 (6)
C언어 베이직 및 프로그램 (3)
보안 관련 용어 정리 (2)
넥사크로 (6)
Total :
Today : Yesterday :