목록데이터베이스/Oracle DB (4)
seong

테이블 생성 예제로 바로 알아보기 CREATE TABLE customer( id number(9,0), username varchar2(12) not null, -- 유저의 이름 12자리 null 불가능 password varchar2(20) not null, -- 비밀번호 20자리 null 불가능 email varchar2(50), -- email 50 자리 null 가능 CONSTRAINT customer_pk PRIMARY KEY(id), -- id가 customer의 프라이 머리키가 된다. CONSTRAINT customer_username_uk UNIQUE(username) -- username은 중복이 없는 값이 되고, null값을 가질수 없게된다. ); 시퀀스 생성 1 1. 왼쪽에 시퀀스 오..

직업별 월급 평균 구하기 UNION ALL 은 합쳐주는 역할을 한다. JOB이 같은 값들끼리 sal의 평균을 출력해주는 코드(필요 하지 않는 계산들은 모두 null값 처리 해주었다.) SELECT job, sal, ename, hiredate, mgr, comm, deptno, empno FROM emp WHERE job = 'ANALYST' UNION ALL SELECT '소계', round(avg(sal), 2), null, null, null, null, null, null FROM emp WHERE job = 'ANALYST' UNION ALL SELECT job, sal, ename, hiredate, mgr, comm, deptno, empno FROM emp WHERE job = 'CLERK..

INSERT 행을 추가 할 수 있다. 사용법 테이블의 열의 갯수,값이 알맞게 입력이 되어야 한다. INSERT INTO emp5(empno, ename, job,mgr, hiredate, sal, comm, deptno) VALUES(9999,'cos', 'SALESMAN', 7369, sysdate, 600, 0 , 10); sysdate는 오늘 날짜를 확인 해주는 속성이다. COMMIT INSERT문은 작성해주고 나면 메모리에만 남아있다,즉 컴퓨터를 재부팅 시 없어지는 데이터이다. 영구적 테이블 추가를 해주기 위해 COMMIT 을 해준다. ROLLBACK INSERT를 해주고 COMMIT을 해주기 전 ROLLBACK을 해주면 메모리에 있던 데이터가 사라진다. 코드를 보면서 확인 empno가 9999인..

서브 쿼리문 3가지 1. 서브쿼리 2. 인라인 뷰 3. 스칼라 서브쿼리 emp 테이블이 있다. 1. SUBQUERY WHERE ,HAVING 절 안에 들어가는 쿼리문을 서브쿼리 라고한다. emp 테이블에서 sal의 값이 가장 큰 sal을 출력하는 쿼리문을 작성해라. SELECT * FROM emp WHERE sal = (SELECT max(sal) FROM emp); --SELECT max(sal) FROM emp; 2. INLINE VIEW FROM 절 안에 들어가는 것을 INLINE VIEW라고 한다. SELECT * FROM ( SELECT sal+12 연봉, ename 사원 FROM emp ); 3. Scala SubQuery(조인 배울 때 다시 복습) SELECT 절 안에 사용하는 서브 쿼리 문..