계층형 질의 계층형 질의를 이용해 EMP 테이블에서 사원간의 서열을 출력한다. START WITH와 CONNECT BY 절을 이용하면 LEVEL을 출력할 수 있다. START WITH절은 루트노드를 지정하며 CONNECT BY 절은 부모노드와 자식노드 간의 관계를 지정한다. SELECT rpad(' ', (level-1)*3) || ename as employee , level , sal , job FROM EMP START WITH ename='KING' CONNECT BY PRIOR empno = mgr; CONNECT BY 조건 BLAKE와 이를 부모노드로 가진 사원을 제외하여 노드를 구성한다. CONNECT BY PRIOR empno = mgr AND ename != 'BLAKE'; START W..
쿼리 SELECT A.COLUMN_NAME , A.COMMENTS , B.DATA_TYPE || '(' || B.DATA_LENGTH || ')' AS DATA_TYPE , B.NULLABLE , B.DATA_DEFAULT FROM ALL_COL_COMMENTS A, USER_TAB_COLUMNS B WHERE A.TABLE_NAME = '테이블명' AND A.TABLE_NAME = B.TABLE_NAME AND A.COLUMN_NAME = B.COLUMN_NAME ORDER BY B.COLUMN_ID COLUMN_NAME COMMENTS DATA_TYPE NULLABLE DATA_DEFAULT EMPNO 사원번호 VARCHAR2(20) N ('001') EMPNAME 사원이름 VARCHAR2(50) N..
CREATE TABLE ORA-00907 조회 쿼리일 경우 사용된 괄호의 짝이 맞지 않기 때문에 발생하지만, 테이블 생성시 괄호를 사용하지 않았음에도 불구하고 해당오류가 발생한다면 속성 제약을 지정하는 순서가 잘못된 경우 일 수 있다. 아래의 예시에서 DEFAULT 제약 보다 NOT NULL 제약을 먼저 주었을 때 오류가 발생한다. --오류발생 CREATE TABLE EX( COLUMN1 VARCHAR(100) NOT NULL DEFAULT '00' ); --변경 후 정상동작 CREATE TABLE EX( COLUMN1 VARCHAR(100) DEFAULT '00' NOT NULL );
SQL 쿼리 SELECT * FROM v$version; Oracle Database 12c Standard Edition Release 12.2.0.1.0 - 64bit Production PL/SQL Release 12.2.0.1.0 - Production CORE 12.2.0.1.0 Production TNS for Linux: Version 12.2.0.1.0 - Production NLSRTL Version 12.2.0.1.0 - Production
SUBSTR(문자열, 시작위치, 추출길이) SELECT SUBSTR('STRING', 1, 2), SUBSTR('STRING', 3, 2),SUBSTR('STRING', 5, 2) FROM DUAL SUBSTR('STRING', 1, 2) : 첫 번째 글자부터 두 글자 출력 SUBSTR('STRING', 3, 2) : 세 번째 글자부터 두 글자 출력 SUBSTR('STRING', 5, 2) : 다섯 번째 글자부터 두 글자 출력 SUBSTR(문자열, 시작위치) SELECT SUBSTR('STRING', 1), SUBSTR('STRING', 3),SUBSTR('STRING', 5) FROM DUAL SUBSTR('STRING', 1) : 첫 번째 글자 이후 문자열 출력 SUBSTR('STRING', 3) :..
NULL 처리 조회,삽입,삭제,수정시 데이터에 NULL값이 존재하는 경우 쿼리가 제대로 동작하지 않을 경우가 있다. NVL, NVL2 함수를 이용하면 NULL이 불러와졌을 때 기본값을 지정해줄 수 있다. NVL 검사할 데이터 또는 컬럼이 NULL이 아니라면 그대로 출력하고 NULL일 때 반환할 기본 값을 지정할 수 있다. NVL([NULL인지 검사할 데이터 또는 컬럼], [NULL일 경우 반환할 값]) EMP 테이블의 COMM 컬럼을 가져왔을 때 그 값이 NULL이라면 0을 출력하고, NULL이 아니라면 가져온 COMM값을 그대로 출력한다. SELECT COMM, NVL(COMM, 0) NVL_COMM FROM EMP NVL 사용 시 주의할 점은 NULL 값을 [NULL인지 검사할 컬럼]의 데이터 타입과..
UNOIN ALL/UNOIN UNOIN ALL/UNION 연산자는 위의 쿼리와 아래 쿼리(여러개의 쿼리) 결과를 하나의 결과로 출력하는 집합연산자이다. 집합연산자는 조회된 쿼리를 대상으로 연산을 하는 연산자이다. UNION ALL 사용시 주의사항 위쪽 쿼리와 아래쪽 쿼리 컬럼의 개수/타입이 동일해야한다 출력되는 컬럼명은 위쪽 쿼리 컬럼명으로 출력된다 ORDER BY 절은 제일 아래쪽 쿼리에만 작성할 수 있다 UNION ALL 예시 SELECT DEPTNO, sum(sal) FROM EMP GROUP BY DEPTNO UNION ALL SELECT NULL AS DEPTNO, sum(sal) FROM EMP UNION ALL - 중복된 결과 포함 SELECT COL1 FROM A UNION ALL SELE..
키본 키 후보키 중 설계자에 의해 선택된 키로써, 데이터가 중복되지 않아 행(row)를 식별할 수 있으며 NULL 값을 가지지않는다. 테이블은 오직 하나의 기본키를 가질 수 있지만 기본키가 반드시 하나의 컬럼으로 이루어져야하는 것은 아니다. 즉, CONSTRAINT로 지정하는 기본키는 하나만 존재하지만, 기본키를 이루는 컬럼은 복수개일 수 있다. 테이블 생성시 PK 제약조건 추가 - 단일 컬럼 CREATE TABLE EMP ( EMP_NO NUMBER(4), EMP_NM VARCHAR2(10), DEPT_NO VARCHAR(2), CONSTRAINT PK_EMP PRIMARY KEY(EMP_NO) ); CREATE TABLE EMP ( EMP_NO NUMBER(4) PRIMARY KEY, EMP_NM V..
- Total
- Today
- Yesterday
- HeidiSQL
- 백준
- 부트스트랩
- CS
- 환경설정
- C++
- 국비교육
- 스프링부트
- 오류
- svn
- JVM
- 인턴
- Thymeleaf
- 네트워크
- 오라클
- 프로그래머스
- 데이터베이스
- 스프링
- 이클립스
- CSS
- Java
- Open API
- 개발용어
- SQL
- 넥사크로
- JSP
- C
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |