목록SQL (22)
말랑말랑제리스타일
한국 데이터 산업 진흥원에서 주관하는 SQL 자격시험인 SQLD와 SQLP 자격증을 비전공자가 취득 가능한지 자격 요건과 실제 비전공자가 합격할 수 있을지 자격증 시험 내용을 알아봅시다. SQLD, SQLP 응시 자격과 합격 기준 먼저 SQLD와 SQLP는 응시 자격이 서로 다릅니다. 통상적으로 큐넷 자격증과 비교하면 SQLD는 기능사 자격증, SQLP는 기사 자격증이라고 생각하면 되는데요. SQLD와 SQLP의 응시 자격 요건도 마찬가지입니다. SQL 개발자 자격증인 SQLD의 경우 응시 자격 제한이 없습니다. 즉, 누구나 응시 가능하고 당연히 비전공자도 응시 가능하다는 거죠. 그러나 SQL 전문가 자격증인 SQLP의 경우 SQLD보다는 자격 요건이 까다롭습니다. 1. 학사 학위 이상 취득자(4년제 대..

Oracle SQL에서 간혹 다른 컬럼을 우선순위로 지정해서 특정 값을 가져와야할 경우가 있습니다. 예를 들어서 급여가 가장 높은 사원의 사번을 가져오는 경우라던지 가격이 가장 높은 제품의 제품 코드를 가져오는 경우가 있겠죠. 이런 경우 급여나 가격을 기준으로 사번과 제품 코드를 가져와야하는데 서브쿼리를 사용하면 많이 복잡해지죠. 서브쿼리를 사용해 다른 컬럼을 우선순위로 값을 가져오는 방법 그럼에도 쿼리가 상당히 단순한 경우 서브쿼리를 이용하는 방법도 존재하기 때문에 이론적으로 쉽게 이해할 수 있는 서브쿼리를 사용해 다른 컬럼을 우선순위로 값을 가져오는 쿼리를먼저 알려드리겠습니다. 아래 예시는 어떤 제품의 가격타입별로 가격이 들어있는 테이블에서 가격 타입이 가장 낮은, 쉽게 말해 어떤 제품 A에 대해 a..
오라클 SQL을 사용하다 보면 종종 따로 테이블에 없는 숫자를 출력하거나 조회해야 되는 경우가 있죠. 아래 쿼리로 오라클에서 1부터 10까지의 숫자를 출력할 수 있습니다. 오라클 1부터 10까지 출력하는 쿼리 SELECT LEVEL AS NUM FROM DUAL CONNECT BY LEVEL
ORACLE 함수 중 SUBSTR을 이용해서 문자열을 자르는 방법은 크게 2가지가 있고 세분화하면 4가지가 있을 수 있는데요. 이 방법들을 한번 알아보겠습니다. ORACLE SUBSTR 사용법 SUBSTR은 기본적으로 2개 또는 3개의 매개변수를 사용할 수 있습니다. SUBSTR(문자열, 시작할 위치, 자를 개수) 이런 방식으로 사용이 가능한데요. 여기서 자를 개수를 비우고 2개의 매개 변수만 사용하면 자동으로 시작 위치부터 끝까지 문자열을 자르게 됩니다. SELECT SUBSTR('ABCDEF',3,2) FROM DUAL; SELECT SUBSTR('ABCDEF',3) FROM DUAL; 이런 식으로 테스트해보면 첫 번째 ORACLE 쿼리의 결과는 3번째 글자부터 2개의 글자를 잘라서 'CD'가 나오고..
오라클 SQL문 중 NULL을 처리하는 다양한 구문이 있는데 그 중 가장 대표적인 DECODE, NVL,NVL2의 사용법과 차이점을 알아봅시다.DECODE,NVL,NVL2 사용법먼저 DECODE와 NVL과 NVL2의 사용법입니다. 엄연히 말하면 DECODE는 NULL 처리용 함수는 아니지만 DECODE를 이해하면 NVL과 NVL2를 이해하기 훨씬 쉽기 때문에 DECODE의 사용법 먼저 설명드립니다.DECODE 사용법DECODE의 구문은 아래와 같습니다.DECODE(값,비교값,일치할 경우,불일치할 경우)만약 이 DECODE를 다중으로 사용할 경우 아래의 형태로도 사용 가능합니다.SELECT DECODE(VAL,'1','T1','2','T2','T3') FROM (SELECT '1' AS VAL FROM D..
오라클 주석처리 방법 오라클에서 주석처리 방법은 크게 두가지가 있고 사용 방법은 간단합니다. -- 커맨드로 한줄 전체 주석처리가 가능합니다. /* 와 */로 묶어서 여러줄로 된 단락 전체 주석처리가 가능합니다. SELECT 1 FROM DUAL; --1을 조회한다 /*1을 dual 테이블에서 조회한다 이렇게 단락 전체를 주석처리 할 수 있다.*/ 주석처리 및 주석해제 단축키의 사용 오라클 DB를 사용해보면 생각보다 주석처리와 해제하는 상황이 빈번합니다. 이럴 때주석처리와 주석해제를 할때마다 매번 입력해주기는 생각보다 번거롭기 때문에 단축키를 사용하게 됩니다. 여기서 가장 자주 사용되는 오라클 SQL 편집툴인 토드와 오라클 Developer 기준으로 설명드리겠습니다. 토드에서 주석처리 단축키 토드에서는 단..

[ERR0000]ORA-01861: literal does not match format string Oracle DB를 프로그램에서 쓰다 보면 정말 자주 발생하는 Oracle 에러 중 하나입니다. 이 Oracle 에러가 상당히 골치아픈 이유는 토드나 SQL 디벨로퍼에서 쿼리로 실행하면 발생하지 않는데 프로그램에서 프로시저로 호출시 발생하기 때문이죠. 그럼 자세히 Ora-01861 에러의 발생 원인과 처리 방법을 알아보겠습니다. 1. Ora-01861 에러의 발생 원인 텍스트에 나온 것처럼 문자열이 포맷 스트링과 매칭되지 않는 에러입니다. 제가 이 Ora-01861 에러 많이 봤는데 발생 원인의 90프로가 날짜형을 문자열 형과 비교할 때 발생했습니다. Oracle DB에서 날짜 데이터를 Varchar2(..

Oracle DB에서 UNION, UNION ALL, MINUS 등 집합 연산을 하는 경우 "ORA-12704: 문자 집합이 일치하지 않습니다" 라는 에러가 발생할 수 있습니다. 그럼 이 ORA-12704 에러가 왜 발생하는지 알아보겠습니다. ORA-12704 의 발생원인 ORA-12704의 에러 문구에서도 짐작 가능하듯이 집합 연산의 대상이 되는 데이터 타입이 상이한 경우 ORA-12704 에러가 발생합니다. 주로 NVARCHAR2와 VARCHAR2를 집합연산 하는 경우 이 에러를 마주하게 됩니다. VARCHAR2와 NVARCHAR2의 차이 VARCHAR2는 데이터를 ASCII 코드 형태로 저장하고 NVARCHAR2는 UNICODE 형태로 저장합니다. 따라서 NVARCHAR2는 기본적으로 CHAR 단위..