본문 바로가기

전체 글

(413)
Oracle DB의 DML ## DML(데이터 조작어) -- CUD:row 단위, 추가, 변경, 삭제 -- CRUD:추가,조회,변경,삭제 -- 로그가 남는다 => 작업내용 로그를 기반으로 작업을 취소 할 수 있다!!! ST_DEPT(D_NO,D_NAME) ST(S_NO,NAME,BIRTH,POINT,D_NO) CREATE TABLE ST_DEPT ( D_NO NUMBER(2), D_NAME VARCHAR2(100), ); ALTER TABLE ST_DEPT MODIFY D_NO NUMBER(4); CREATE TABLE ST( S_NO CHAR(5), S_NAME VARCHAR2(100), S_BIRTH DATE, POINT NUMBER(2,1), D_NO NUMBER(2) ); ## ST_DEPT 자료 입력 -- 숫자 타입 : ..
Oracle DB의 DDL ## 지금까지 학습 내용 -SELECT -WHERE 조건식 -함수:단일행,다중행 -조인 -서브쿼리:TOP_N 알고리즘 -SET 연산자 -DML : INSERT,UPDATE,DELETE ## DDL -오라클 데이터타입 : 20여 종류 # 문자 -- CHAR(N) N은 바이트 고정길이 문자 / 최대 2000 BYTE / 디폴트 1 BYTE 대체로 1BYTE 문자정보에 사용 -- VARCHAR2 가변길이 문자 / 최대 4000 BYTE / 디폴트 1 BYTE 1자 이상의 문자정보에 사용 -- LONG(N) 최대 2GB 크기의 가변길이 문자열 한 레코드에 한개만 사용가능 요즘 권장하지 않음 => CLOB 권장 -- CLOB 대용량 텍스트 데이터 타입 최대 4GB # 숫자 -- 정수 NUMBER(자릿수) NUMB..
[5일차 과제]서브쿼리 ## 서브쿼리 실습문제 이름 : 조은수 EX1. Chen와 동일한 부서에 속한 모든 사원의 이름과 입사일을 표시하는 질의를 작성하고 Chen 본인은 제외 시키시오. select last_name,hire_date from EMP where department_id=(select department_id from emp where last_name='Chen') AND LAST_NAME!='Chen'; EX2. 자신의 급여가 평균 급여보다 많은 모든 사원의 사원 번호, 이름, 급여를 표시하는 질의를 작성하고 급여를 기준으로 내림차순으로 정렬합니다. select employee_id,last_name,salary from emp where salary> (select avg(salary) from emp) ..
[5일차]set 연산자 # hr 로그인 grant select on JOB_HISTORY to public; #aa01 로그인 하여 작업 create table JOB_HISTORY as select * from hr.JOB_HISTORY; ## union -쿼리 결과를 위아래로 합치는 것 -두 쿼리문의 스키마가 같아야 한다.(컬럼의 개수, 타입이 같아야 한다.) -첫번째 쿼리문의 컬럼명이 대표 컬럼명이 된다. =중복 불가:한번만!!! =첫번째 컬럼값을 기준으로 오름차순으로 정렬 ## union all -쿼리 결과를 위아래로 합치는 것 -두 쿼리문의 스키마가 같아야 한다.(컬럼의 개수, 타입이 같아야 한다.) -첫번째 쿼리문의 컬럼명이 대표 컬럼명이 된다. =중복 허용!!! =정렬 안됨!!! select last_name, s..
[4일차 과제]sql 조인문제 ## SQL 조인문제 -- 오라클 구문, Ansi 표준 구문 중 하나로 작성해 주세요. EX1. 모든 사원의 이름, 부서 번호, 부서 이름을 표시하는 질의를 작성하시오. SELECT EMPLOYEE_ID,DEPARTMENT_ID,DEPARTMENT_NAME FROM EMP,DEPT ON (WHERE EMP.DEPARTMENT_ID=DEPT.DEPARTMENT_ID); EX2. 부서 60에 속하는 모든 사원의 이름과 부서이름을 표시하는 질의를 작성하시오. SELECT LAST_NAME,DEPARTMENT_NAME FROM EMP,DEPT ON (WHERE EMP.DEPARTMENT_ID=60&&DEPT.DEPARTMENT_ID=60); EX3. 커미션을 받는 모든 사원의 이름과 부서이름을 표시하는 질의를 ..
[4일차]서브쿼리 ## SQL - 서브쿼리 #서브쿼리 -쿼리 안의 내부 쿼리 -서브쿼리는 괄호로 감싼다. -수행순서:서브쿼리 수행 => 메인쿼리에 전달 -서브쿼리의 결과값이 null 이면 메인쿼리의 결과값도 null 이다. -사용위치 =>select:스칼라 서브쿼리:함수로 구현하여 사용하는 추세 =>where : 중첩 서브쿼리 : 조건식의 우항에 위치 =>from:IN-LINE 뷰 : 서브쿼리의 결과를 테이블 처럼 사용 Chen 보다 많은 급여를 받는 사원의 이름과 급여 SELECT LAST_NAME, SALARY FROM EMP WHERE SALARY>( SELECT SALARY FROM EMP WHERE LAST_NAME='Chen') ORDER BY SALARY DESC; -- 부서가 101번 사원과 같으며, 월급이..
[3일차 과제]급여 최고액, 최저액, 총액, 평균 구하기 EX1. 모든 사원의 급여 최고액, 최저액, 총액 및 평균액을 표시합니다. 열 레이블을 각각 Maximun, Minimum, Sum 및 Average로 지정하고 결과를 정수로 반올림하는 질의를 작성하시오. SELECT MAX(SALARY) AS Maximum, MIN(SALARY) AS Minimum, SUM(SALARY) AS Sum, ROUND(AVG(SALARY)) AS Average FROM EMP; EX2. 각 직무에 대한 급여 최저액, 최고액, 총액 및 평균액을 표시하도록 한다. 평균은 소숫점 둘째자리까지 표현하시오. SELECT JOB_ID,MIN(SALARY),MAX(SALARY),SUM(SALARY), ROUND(AVG(SALARY), 2)//소수점이 어디갔지?! FROM EMP GROU..
[3일차]JOIN 함수 ## SQL - 조인(JOIN) -- 부서테이블 복사 CREATE TABLE DEPT AS SELECT * FROM HR.DEPT; -- 지역 테이블 복사 CREATE TABLE LOCATIONS AS SELECT * FROM HR.LOCATIONS; -- JOB_GRADES 테이블 복사 CREATE TABLE JOB_GRADES AS SELECT * FROM HR.JOB_GRADES; --------------------------------------- #조인 -하나 이상이 테이블을 합치는 것 (좌우로 합침) -오라클 전용 조인, ANSI 표준 조인 # 조인의 유형 -EQUI JOIN (등가 조인 : INNER JOIN, NATURAL JOIN ) -NON EQUI JOIN -OUTER JOIN -S..