본문 바로가기

2019125

SQL 제약조건(추후수정) 2019. 11. 26.
SQL DDL (추후수정) 2019. 11. 26.
SQL DDL 테이블 생성 / 변경 / 삭제 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 12.. 2019. 11. 20.
SQL table 생성을 위한 데이터형의 종류 문자형 char(size) - char(20) 20개의 글자 넣을 수 있음 varchar2(size) 2000byte까지 넣을 수 있음 long 더 큰 문자형 넣을수있음 (2GB까지) 숫자형 number 40자리까지 숫자저장 가능 number(7,2) 7개 넣을수 있고 소수두자리까지 표현 가능 (정수5자리, 소수점2자리) 날짜 date 날짜 lob lob clob blob nclob bfile l2GB까지 데이터 (이미지문서, 실행파일) long타입보다 더 큰 텍스트 데이터 저장 그래픽 이미지, 동영상, 사운드 등 데이터 국가별 문자셋 데이터 저장 바이너리 데이터를 파일형태로 저장 interval year to month interval day to second 년과 월 이용하여 기간저장 일,시,분,초를.. 2019. 11. 20.
SQL 서브쿼리 서브쿼리 : - 하나의 SELECT 문장의 절 안에 포함된 또하나의 SELECT 문장 - 비교연산자의 오른쪽에 기술하며, 반드시 괄호로 둘러쌓아야함 - 서브 쿼리는 메인 쿼리가 실행되기 전 한번만 실행 된다 - 단일행 : 서브쿼리의 수행결과가 단 한줄만 return하는것 --- 사용 가능한 비교연산자 : = > >= = (select sal from emp where ename = 'CLARK'); SELECT ename, deptno FROM emp WHERE deptno = (SELECT deptno FROM dept WHERE loc = 'DALLAS'); select * from emp; SELECT ename, sal FROM emp WHERE deptno = (SELECT deptno FROM.. 2019. 11. 20.
SQL 문제 및 문제풀이 (~JOIN) --(1)부서위치 코드가 1700인 곳에서 근무하는 사원의 성, 부서명, 직무명을 출력하시오 --(2)Steven King에게 보고하는 사원의 사원코드, 성, 급여를 출력하시오 --(3)Executive 부서의 사원번호, 성, 부서코드, 직무코드를 출력하시오 --(4)부서별로 평균급여를 출력하시오 --(5)입사년도별 부서별 평균 급여를 출력하시오 --(6)우리회사의 총인원및 입사년도별 인원을 출력하시오 --(7) 각 관리자보다 먼저 채용된 사원의 사원이름, 입사일, 관리자이름, 관리자의 입사일을 출력하시오 --(8) 각 부서별 평균급여가 6000을 초과한 부서이름과 평균 급여를 출력하시오 더보기 1234567891011121314151617181920212223242526272829303132333435.. 2019. 11. 19.
정규화 개념 / 키 / 제1~3정규화 / 비정규화 1. 정규화 관계형 데이터베이스의 설계에서 중복을 최소화하게 데이터를 구조화하는 프로세스를 정규화(Normalization)라고 한다. 데이터베이스 정규화의 목표는 이상이 있는 관계를 재구성하여 작고 잘 조직된 관계를 생성하는 것에 있다. 일반적으로 정규화란 크고, 제대로 조직되지 않은 테이블들과 관계들을 작고 잘 조직된 테이블과 관계들로 나누는 것을 포함한다. 정규화의 목적은 하나의 테이블에서의 데이터의 삽입, 삭제, 변경이 정의된 관계들로 인하여 데이터베이스의 나머지 부분들로 전파되게 하는 것이다. (출처:wikipedia) entity(엔티티) : emp테이블과 같은 '정보의 단위'를 가리킨다. 테이블 안에는 여러 컬럼이 있고 컬럼 = 속성attribute 테이블 안에는 여러 속성이 있고 속성att.. 2019. 11. 19.
SQL JOIN equi / non-equi / self / outer / inner 설멍 사용 방법 Equi join 동일 컬럼 기준으로 조인 from employees e, departments d where e.department_id = d.department_id Non-Equi join 동일 컬럼 없이 다른 조건을 사용하여 조인 from emp, salgrade where sal between losan and hisal; from emp e, salgrade s where e.sal>s.losal and e.sals.losal and e.sal 2019. 11. 18.
SQL group by (문제) 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 32 33 34 35 --부서별 연도별 01~03 04~06 / 07~나머지년도 인원을 계산하세요. -- -연도(column) --부서(row) select department_id, count(*), count(decode(to_char(hire_date,'yyyy'), 2001, 1, 2002, 1, 2003, 1)) as "1~3", count(decode(to_char(hire_date,'yyyy'), 2004, 1, 2005, 1, 2006, 1)) as "4~6", count(decode(to_char(hire_date,'yyyy'), 2007,.. 2019. 11. 18.
SQL group by having 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 --부서별 평균 급여 select deptno, avg(sal) from emp group by deptno; --부서별 최대급여, 최소급여 select deptno, max(sal), min(sa.. 2019. 11. 18.
SQL sum avg count max min 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 --합계, 평균, row의 개수 select sum(sal), avg(sal), count(sal), count(*) from emp; --comm합계, row의 갯수, comm의 갯수(null값이 있어서 4로 출력) select sum(comm), count(*), count(comm) from emp; --데이터 있는 것만 count select comm, count(comm) from emp; --2200 / 4 = 550 //null값은 빼고 계산된다. --sum(comm)/count(comm); select avg(comm) from emp; --.. 2019. 11. 18.
SQL CASE-WHEN-THEN --case when 일때 then 이거로 바꿔라 select deptno, case deptno when 10 then 'a' when 20 then 'b' when 30 then 'c' end as result from emp; --case when 일때 then 이걸로 바꿔 else 나머지는이거 select deptno, case deptno when 10 then 'a' when 20 then 'b' else 'c' end as result from emp; --when condtion(조건) select deptno, case when deptno=10 then 'a' when deptno=20 then 'b' else 'c' end as result from emp; --case 사용하여 직급.. 2019. 11. 15.
SQL DECODE --decode(식, 조건, 결과, 조건, 결과, 조건, 결과) select empno, ename, decode (deptno, 10, '영업', 20, '기획', 30,'개발') as result from emp; --decode(식, 조건,결과,조건,결과,기본값) select empno, ename, decode (deptno, 10, '영업','개발') as result from emp; --Q.10번부서의 급여는 10%인상, 20번부서는 20%인상, -- 나머지 부서는 동결 select empno, ename, sal, deptno, decode( deptno, 10, sal*1.1, 20, sal*1.2, sal) as salup from emp; --Q.각 직업별 급여 인상 select em.. 2019. 11. 15.
반응형