일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 자바
- 야구게임
- 상속
- full text indexing
- 스프링
- Validations
- 상속예제
- 업캐스팅
- 다운캐스팅
- 다형성
- jquery
- 전체
- 추상클래스
- 가변인자
- 단축키
- Full text
- 이클립스
- 자바 야구게임
- 로또
- while
- 전자정부
- 전체텍스트
- Random
- angular2
- Login with OAuth Authentication
- 페이징
- IBatis procedure
- 형변환
- 25가지 효율적인 sql작성법
- Today
- Total
목록ORACLE (22)
nalaolla
ROLLUP operatorROLLUP구문은 GROUP BY 절과 같이 사용 되며, GROUP BY절에 의해서 그룹 지어진 집합 결과에 대해서 좀 더 상세한 정보를 반환하는 기능을 수행 한다.SELECT절에 ROLLUP을 사용함으로써 보통의 SELECT된 데이터와 그 데이터의 총계를 구할 수 있다. 간단 예제-- 먼저 GROUP BY를 사용해서 직업별로 급여 합계를 구하는 예제이다. SQL> SELECT job, SUM(sal) FROM emp GROUP BY job; JOB SUM(SAL) ---------- ---------- ANALYST 600 CLERK 3200 MANAGER 33925 PRESIDENT 5000 SALESMAN 4000 -- ROLLUP을 사용해서 직업별로 급여 합계와 총계를 ..
통계나 정산 쿼리를 짜다보면 날짜별 정산 내역을 조회할 경우가 있는데 중간에 비는 날짜가 생기는 경우 해당 날짜의 ROW가 없는 경우가 있는데 이럴때 'Connect By'를 이용해 날짜 레코드를 만들어서 OUTER JOIN을 걸어 사용하면 좋다. 날짜 레코드 만들기 SELECT TO_CHAR(TO_DATE('{시작일자}', 'YYYYMMDD')+LEVEL-1, 'YYYY-MM-DD') FROM DUALCONNECT BY LEVEL
문자열을 IN 쿼리로 변경하기 프로시저나 쿼리를 만들경우 가끔 입력 데이터가 ','로 구분되어진 문자열 데이터를 이용해 조회를 해야하는 경우가 발생한다. WHERE COL IN ( SELECT TRIM( SUBSTR( ','||문자열데이터||',', INSTR(','||문자열데이터||',', ',', 1, LEVEL)+1, (INSTR(','||문자열데이터||',', ',', 1, LEVEL+1) - INSTR(','||문자열데이터||',', ',', 1, LEVEL))-1 ) ) FROM DUAL CONNECT BY LEVEL
CREATE OR REPLACE PROCEDURE 프로시저이름 ( 입력파라미터1 IN 파라미터타입, -- 파라미터 종류 (오라클 컬럼 타입 참고, CHAR, VARCHAR2, NUMBER ... 등) 입력파라미터2 IN 파라미터타입, ... 출력파라미터1 OUT 파라미터타입, 출력파라미터2 OUT 파라미터타입, ...) IS -- FOR LOOP 1. 커서를 이용한 방법 CURSOR 커서변수 IS SELECT TNAME, TABTYPE FROM TAB; BEGIN -- FOR LOOP 1. 커서를 이용한 방법 FOR 반복변수 IN 커서변수 LOOP -- 커서변수에 담긴 냉요을 반복변수에 담에 LOOP 돌리면서 처리 DBMS_OUTPUT.PUT_LINE(반복변수.컬럼명); END LOOP; -- FOR L..
WITH T(TYPE, NAME, CODE) AS( SELECT '과일', '사과', '0' FROM DUAL UNION ALL SELECT '과일', '레몬', '1' FROM DUAL UNION ALL SELECT '과일', '포도', '2' FROM DUAL UNION ALL SELECT '과일', '참외', '3' FROM DUAL UNION ALL SELECT '채소', '오이', '0' FROM DUAL UNION ALL SELECT '채소', '당근', '1' FROM DUAL UNION ALL SELECT '채소', '호박', '2' FROM DUAL)SELECT TYPE , SUBSTR(XMLAGG(XMLELEMENT(X, ',', NAME) ORDER BY CODE).EXTRACT('/..
오라클 SQL관련 chm파일과 내장함수 관련 chm파일입니다..인터넷 안될경우 PC에 놓고 사용하면 좋은 참조자료가 될거 같습니다. 혹..문서의 내용부분이 안보일경우..파일의 속성 --> 일반탭 --> 차단해제를 체크하면 됩니다..
1. 문자 함수 1-1) CHR 1-2) CONCAT 함수 1-3) INITCAP 함수 1-4) LOWER 함수 1-5) LPAD 함수 1-6) LTRIM 함수 1-7) NLS_INITCAP 함수 1-8) NLS_LOWER 함수 1-9) NLSSORT 함수 1-10) NLS_UPPER 함수 1-11) REPLACE 함수 1-12) RPAD 함수 1-13) RTRIM 함수 1-14) SOUNDEX 함수 1-15) SUBSTR 함수 1-16) TRANSLATE 함수 1-17) TREAT 함수 1-18) TRIM 함수 1-19) UPPER 함수 1-20) ASCII 함수 1-21) INSTR 함수 1-22) LENGTH 함수 2. 날짜 처리함수(datetime function) 2-1) ADD_MONTHS 함..
------------------------------------------------------------1. 오라클 설치--1.1. 64bit -> express(client) 버전 지원 (x)--1.2. 64bit -> 오라클 다운로드(11g) 설치--1.3. 설치 주의 사항-- - SYSTEM, SYS 어드민 계정 암호 설정하기(1004)-- - 위 두계정을 제외하고 나머지는 LOCK 상태-- -- alter user hr account unlock;-- -- alter suer hr identified by 1004;-- -- 두 문장에서 hr유저 락을 풀고 암호를 설정함-- -- hr 계정에 대해서 사용가능-- - cmd 창에서 조회 가능 but 불편함 -> 이를 도와주는 툴-- - 오라클 툴..
// 프로시저 작성view plainprint?CREATE OR REPLACE PROCEDURE SP_SEL_DATA ( IN_01 IN VARCHAR2, OUT_LISTDATA_01 OUT sys_refcursor, OUT_LISTDATA_02 OUT sys_refcursor, OUT_DATA_CNT OUT NUMBER(10) ) IS BEGIN SELECT COUNT(1) INTO OUT_DATA_CNT FROM TMP; OPEN OUT_LISTDATA_01 FOR SELECT V1, V3 FROM TMP; OPEN OUT_LISTDATA_02 FOR SELECT V1, V2, V3, V4 FROM TMP; END SP_SEL_DATA; // 프로시저 작성데이터 출력 확인 // 중요1. LOOP 절 ..
1. Creating a PackageINSERT, UPDATE, DELETE 의 경우는 프로시져 생성시 별다른 이슈가 발생하지 않는다..리턴값이 발생하지 않기 때문에..하지만 SELECT의 경우 리턴값을 받아야 하기때문에 커서에 해당 ResultSet을 담아 리턴해주어야 한다.먼저 패키지를 생성한다.CREATE OR REPLACE PACKAGE TYPES AS --> 패키지명은 "TYPES" TYPE cursorType is REF CURSOR; --> 패키지에 생성된 커서타입 REF CURSOR END TYPES; 2. Creating a Procedure CREATE OR REPLACE PROCEDURE UP_GET_TABLES ( PSEARCH_FIELD IN VARCHAR2, --SEARCH F..