목록[Oracle]/SQL (Program source) (17)
Everything has an expiration date
20231101_01_scott.sql SELECT USER FROM DUAL; --==>> SCOTT --■■■ UPDATE ■■■-- -- 1. 테이블에서 기존 데이터를 수정(변경)하는 구문 -- 2. 형식 및 구조 -- UPDATE 테이블명 -- SET 컬럼명 = 변경할 값[, 컬럼명-변경할값, ...] -- [WHERE 조건절] SELECT * FROM TBL_SAWON; --○ TBL_SAWON 테이블에서 사원번호 1005번 사원의 -- 주민번호를 『7609172234567』로 수정한다. UPDATE TBL_SAWON SET JUBUN = '7609172234567' WHERE SANO = 1005; -- 특정 테이블 전체를 변경할 때는 WHERE 절 X UPDATE TBL_SAWON SET 주..
팀 과제 - 샘플 스키마(데이터베이스) 재구성 [20231031_03_hr(4팀_김지민).sql] SELECT USER FROM DUAL; --==>> HR -- *(제출하는 파일은 각자 다 제출!!) --■■■ 팀 별 실습 수행 과제 ■■■-- -- 제출 파일명 -- · 20231031_03_hr(4팀_김지민).sql -- · 20231031_03_hr(4팀_김지민) 수행후기.txt -- HR 샘플스키마 ERD 를 이용한 테이블 재구성~!!! -- 팀별로... HR 샘플스키마에 있는 기본 테이블(7개) -- COUNTRIES / DEPARTMENS / EMPLOYEES / JOBS / JOB_HISTORY / LOCATIONS / REGIONS -- 을 똑~~~~~~~~~~ 같이 새로 구성한다. -- ..
20231031_01_hr.sql SELECT USER FROM DUAL; --==>> HR /* [정규화 : 테이블을 분리, 쪼개는 것, 나누는 것.] --> DB서버의 메모리 낭비를 줄이기 위해서 --> 식별자를 갖게끔 테이블을 나눈다. -- 규칙 : 제 1 정규화 → 제 2 정규화 → 제 3 정규화 → 제 4 정규화 --● 제 1 정규화 : 테이블에 값이 중복될 경우 이를 테이블로 구분. -- EX) LG(서울) SK(서울) LG(부산) 사원명 사원 정보... → 2개의 테이블로 구분. -->> 부모 테이블, 자식 테이블로 나눠진다. (부모 : 회사, 자식 : 사원) -- 부모 테이블 : 참조 받는 컬럼 (PRIMARY KEY) -- 자식 테이블 : 참조 하는 컬럼 (FORIGN KEY) -- 부모..
20231030_01_hr.sql SELECT USER FROM DUAL; --==>> HR -- 코드생산 (실수하면 그 부분만 고치고 다시 진행하면 됨) -- ~~~~~~~~~~ -- 1 2 -- |------------------|---------|---|---|----> -- ~~~~~~~~~~~~~~~~~~ -- ★DB설계, 데이터베이스 생산 기간 (실수하면 코드 생산한 것 다 날림) -- 코드생산 과정에서 문제가 발생한다면 앞 부분으로 돌아가 -- 잘못된 부분을 고친다. -- 잘못된 부분이 또 있으면 또 다시 고치고 이어서 진행한다. -- : -- 문제가 발견됐다 하면 프로젝트를 갈아엎거나 하진 않는다. -- 데이터베이스 생산 기간에서 문제가 발생했다면 상황이 다르다. -- 코드 부분을 아예 전..
20231027_01_SCOTT.sql SELECT USER FROM DUAL; --==>> SCOTT --○ TBL_EMP 테이블에서 수당(커미션, COMM) 이 가장 많은 사원의 -- 사원번호, 사원명, 부서번호, 직종명, 커미션 항목을 조회한다. -- 중첩서브쿼리의 MAX(COMM) 을 이용한 풀이 SELECT EMPNO "사원번호", ENAME "사원명", DEPTNO "부서번호", JOB "직종명", COMM "커미션" FROM TBL_EMP WHERE COMM IN ( SELECT MAX(COMM) FROM TBL_EMP ); --==>> 7654MARTIN30SALESMAN 1400 -- ALL() 을 이용한 풀이 SELECT EMPNO "사원번호", ENAME "사원명", DEPTNO "부..
20231026_01_SCOTT.SQL -- [서브상단쿼리 내부 케이스문 실험] --************************************************************************ SELECT ENAME, (SELECT CASE WHEN HIREDATE > E.HIREDATE THEN '라라' WHEN HIREDATE = E.HIREDATE THEN '루루' ELSE '하하' END FROM EMP WHERE ENAME = E.ENAME) -- 단일 값이 될 수 있도록 WHERE 절을 이용해야 한다. FROM EMP E; SELECT TO_CHAR(HIREDATE, 'YYYY-MM') FROM EMP; SELECT CASE WHEN TO_CHAR(HIREDATE, 'YY..