본문 바로가기

Study/database12

포함하지 않음 not in , not exists, minus .. 1. not in ... SELECT * FROM A WHERE a.key not in (SELECT b.key FROM B) 형태의 구문이며, B쪽을 먼저 access하여 b.key로 a.key에 공급자역할을 하는 서브쿼리로 쓰고 싶을 때 주로 사용합니다. 2. not exists ... SELECT * FROM A WHERE not exists (SELECT * FROM B WHERE b.key = a.key) 형태의 구문이며, A쪽을 먼저 access하고 나서 a의 각 row들을 not exists로 조사하여 filtering하는 처리를 할 때 주로 사용합니다. 즉, B를 access하기 전에 A쪽의 전체범위가 먼저 access됩니다. 이 때의 서브쿼리는 공급자가 아닌 확인자역할만 해 줄 수 있습니.. 2008. 3. 12.
오라클 함수랑 기타등등 유용한 정보( 펌) 1. SQL 명령어는 다음과 같이 기술한다. l SQL 명령어는 한 줄 혹은 여러 줄에 기술한다. l 일반적으로 절들은 수정하기 쉽게 다른 줄에 기술한다. l TAB 을 사용할 수 있다. l SQL 명령어 단어는 생략하거나 분리할 수 없다. l SQL 명령어는 대소문자를 구분하지 않는다. l SQL 명령어는 ; 으로 종료한다. l SQL 명령어는 SQL BUFFER 에 저장된다. l SQL BUFFER 에 저장된 SQL 명령어는 / 혹은 RUN 으로 실행할 수 있다. 2. SQL*PLUS 명령어는 다음과 같이 기술한다. l SQL*PLUS 명령어는 기본적으로 한 줄에 기술한다. l SQL*PLUS 명령어는 대소문자를 구별하지 않는다. l SQL*PLUS 명령어는 SQL BUFFER 에 저장되지 않는다. .. 2007. 11. 21.
SQL MERGE 문 MERGE INTO tablename A USING ( select 문 ) B ON ( A.XX = B.XX AND A.ZZ = B.ZZ ) WHEN MATCHED THEN 일치할시에 수행할 문장 WHEN NOT MATCHED THEN 불일치할시에 수행할 문장 위 같은 문장으로 키값 데이터를 검색해서 매치하면 UPDATE를 수행 불일치 하면 INSERT를 수행하는 문장을 만들면 좋다 2007. 11. 12.
DECODE문과 CASE 문 DECODE(비교할컬럼, 조건1,값1,조건2,값2, 디폴트) DECODE(TT.TYPE, 1, '내국인', 2,'외국인','그외') CASE WHEN 컬럼 조건1 THEN 값1 WHEN 컬럼 조건2 THEN 값2 ELSE 디폴트 END -- 널체크인경우 (CASE WHEN CNT IS NOT NULL AND ACODE IS NULL THEN '1' WHEN CNT IS NULL AND ACODE IS NOT NULL THEN '2' WHEN CNT IS NOT NULL AND ACODE IS NOT NULL THEN '3' ELSE '0' END ) AS ABS_AR -- 값 체크인경우 select (CASE WHEN col1 50000000 AND .. 2007. 10. 23.