본문 바로가기

IT/오라클

오라클 함수 만들기 기본 (휴대폰 번호 체크) 1. 오라클 REPLACE와 TRANSLATE 문자열 변경 ,숫자만 남기기 에서 만들었던 함수이다. CREATE OR REPLACE FUNCTION parse_int( -- 함수이름 VAR_String VARCHAR2 -- 변수)RETURN VARCHAR2 ISVAR VARCHAR2(13); --var 로 리턴한다BEGIN VAR :=TRANSLATE(VAR_String, '1234567890'||VAR_String, '1234567890') ; RETURN VAR; --var에 var_String에서 숫자가 아닌 것들을 제외하고 저장END parse_int; select parse_int('1234dkla52367j8s90k3ld') from dual ; --결과 : 1234523678903 2. 휴대.. 더보기
오라클 서브쿼리 (Oracle subquery) 1) 단일 SELECT * FROM USERSWHERE NAME= ( SELECT NAME FROM USERS WHERE USERNO='1'); 2) 다중 SELECT * FROM USERSWHERE NAME IN ( SELECT NAME FROM USERS WHERE USERNO 더보기
오라클 REPLACE와 TRANSLATE 문자열 변경 ,숫자만 남기기 1) REPLACE 지정된 문자열을 치환한다. SELECT REPLACE('a1b2c4','a1') FROM DUAL;-> 결과는 a1을 지운 결과 'b2c4'가 나온다. SELECT REPLACE('a1b2c4','a1','BB') FROM DUAL;-> 결과는 a1을 BB로 대체해 'BBb2c4'가 나온다 2) TRANSLATE 지정된 문자를 치환한다. SELECT TRANSLATE('a1a2a3a4a5','a','A') FROM DUAL;->결과 : A1A2A3A4A5 SELECT TRANSLATE('a1b2c3d4e5','abcde','01234') FROM DUAL;->결과 : 0112233445 SELECT TRANSLATE(VAR_PHONE, '1234567890'||VAR_PHONE, '1.. 더보기
오라클 데이터 조회(SELECT) 삽입(INSERT) 수정(UPDATE) 삭제(DELETE) 1. 데이터 조회 1) SELECT * FROM USERS ; 2) SELECT USERNO,EMAIL,PWD,NAME,PNO,ADDRESS FROM USERS; 3) SELECT NAME AS 이름,EMAIL 이메일 FROM USER; --이름 변경(뷰) 4) SELECT * FROM USERS WHERE USERNO0; 5) SELECT * FROM USERS ORDER BY USERNO ASC; --DESC(내림차순),ASC(오름차순) DEFAULT: ASC 6) SELECT * FROM ORDER BY DBMS_RANDOM.VALUE; --랜덤정렬 7) SELECT COUNT(*) FROM USERS; --ROW 갯수 출력 8) SELECT NAME,ROWNUM FROM USERS; --열번호 출.. 더보기
오라클 시퀀스(sequence) 생성 조회 삭제 1.시퀀스 생성 ( 시퀀스이름은 테이블이름_SEQ 쓰는걸 추천) CREATE SEQUENCE USERS_SEQ; INCREMENT BY N -- 증가값 (DEFAULT 1) START WITH N -- 시작값 (DEFAULT 1) MAXVALUE N | NOMAXVALUE -- 최고값 (NOMAXVALUE DEFAULT 10*E27) MINVALUE N | NOMINVALUE -- 최소값 (NOMINVALUE DEFAULT 1) CYCLE | NOCYCLE -- 최소,최고값이후 값의 생성유무 (DEFAULT NOCYCLE) CACHE | NOCACHE -- 메모리에 유지할 값의 수 (DEFAULT 20) 2.시퀀스 값 조회 SELECT USERS_SEQ.CURRVAL FROM DUAL; ※ 전체 시퀀스 .. 더보기