728x90

TIL/academy 60

국비 TIL(Today I Learned) 20220715 오라클 테이블 만들기, 데이터 삭제, OT문제

테이블 만들고, 데이터 추가 MANAGER 부분 시퀀스도 추가함 MANAGER 테이블 DIVS 테이블 EDU_DIVS 테이블 EDU 테이블 -- MANAGER 테이블에 데이터 추가 SELECT* FROM MANAGER ; INSERT INTO MANAGER (EMP_NO, NAME, DEPT) VALUES(MANAGER_SEQ.NEXTVAL, '김소미', '영업1팀') ; INSERT INTO MANAGER (EMP_NO, NAME, DEPT) VALUES(MANAGER_SEQ.NEXTVAL, '김찬진', '영업1팀') ; INSERT INTO MANAGER (EMP_NO, NAME, DEPT) VALUES(MANAGER_SEQ.NEXTVAL, '안정훈', '영업1팀') ; INSERT INTO MANA..

TIL/academy 2022.07.18

국비 TIL(Today I Learned) 20220714 오라클 TEST 계정 생성, 테이블 생성, OT계정 문제

새로운 계정 다시 생성 만들기 TEST OT 계정 만들었을 때와 똑같음 데이터베이스 기본타입 숫자: NUMBER 문자: VARCHAR ( 단, ORACLE은 VARCHAR2 ) - VARCHAR , VARCHAR2 보관방식의 차이 날짜 : DATE VARCHAR에서 제공되는 크기 4000BYTE 일반적으로 숫자, 공백 1개당 1BYTE, 영어 2BYTE, 한글 4BYTE VARCHAR 크기를 넘어갔을때 사용하는것 BLOB(보통적으로 쓰임), CLOB PK (PRIMARY KEY) -> 주키, 데이터를 구분지음 ==> UNIQUE, INDEX(특정 인덱스로 정렬되, 검색 빠르게 함)\ FK(FOREIGN KEY) -> 외래키, 다른 데이터와 관계를 형성. PK와 관계 UK(UNIQUE KEY) -> 고유키..

TIL/academy 2022.07.14

국비 TIL(Today I Learned) 20220713 오라클 실습

오전 어제 학생들이 낸 문제 어제꺼 이어서 풀고, 2개 못 품(문제 8번 17번) 강사님 풀이는 8번, 13번, 15번, 17번, 19번만 있음 -- Seattle에서 근무하는 사원들의 부서별 급여 1위를 구하시오.(내가 낸 문제) -- 출력: 부서이름, 연봉, 도시 SELECT S.DEPARTMENT_NAME ,S.SALARY, S.CITY FROM( SELECT E.SALARY, D.DEPARTMENT_NAME, L.CITY, RANK() OVER(PARTITION BY D.DEPARTMENT_NAME ORDER BY E.SALARY DESC) AS RNK FROM EMPLOYEES E INNER JOIN DEPARTMENTS D ON E.DEPARTMENT_ID = D.DEPARTMENT_ID IN..

TIL/academy 2022.07.13

국비 TIL(Today I Learned) 20220712

OT 계정생성 sys계정에서 다른사용자 왼쪽클릭 사용자 생성 CONNECT 가 있어야 외부에서 붙음 RESOURCE도 체크 ANY는 다른 계정 접근, 지금은 신경안써도 되 CUBE 테이블을 2차원으로 만드는데, 행 열 이렇게 CUBE은 3차원으로 만들어줌 CUBE가 모여 마트? 마트가 모여 웨어? CUBE 이상은 데이터통계업체에서만 쓴데 물질화된 뷰, 오라클만 기능있음 뷰를 테이블처럼 저장해놓고 사용할수 있음, 반복문 돌리고, 변수에 값 넣어주고 이럴수 있데 SEQUENCE랑 TABLE 권한주기 + 버튼 누르고 새로 만들기 계정 생성되고, OT파일 가져오기(구글 드라이브) 맨 아래 COMMIT; 넣어주기 빨간테두리 부분 Local_OT 선택하고 아무데나 클릭해서 F5 누르면 알아서 넣어줌 낼 셤 문제 하..

TIL/academy 2022.07.12

국비 TIL(Today I Learned) 20220711 오라클 문제풀이

HR 계정 -- 문제1 -- 부서별 최고 급여를 받는 사원을 구하시오 -- 내 풀이 SELECT S.DEPARTMENT_NAME, S.FIRST_NAME FROM (SELECT E.FIRST_NAME, E.SALARY, E.DEPARTMENT_ID, D.DEPARTMENT_NAME, RANK() OVER(PARTITION BY D.DEPARTMENT_NAME ORDER BY SALARY DESC) AS RNK FROM EMPLOYEES E INNER JOIN DEPARTMENTS D ON E.DEPARTMENT_ID = D.DEPARTMENT_ID) S WHERE S.RNK = 1; -- 강사님 풀이 SELECT E.FIRST_NAME, D.DEPARTMENT_NAME, E.SALARY FROM (SEL..

TIL/academy 2022.07.11

국비 TIL(Today I Learned) 20220708 오라클 실습

SELECT * FROM EMP; -- 산업경제팀 -- 사업과 각 상사의 급여 차이를 구하고 급여 차이에 따른 랭크를 구하시오 -- 내 풀이 SELECT E1.ENAME, E1.SAL, E2.ENAME AS MGR_ENAME, E2.SAL AS MGR_SAL, E2.SAL - E1.SAL AS CHA, DENSE_RANK() OVER(ORDER BY E2.SAL - E1.SAL DESC) AS RNK FROM EMP E1 INNER JOIN EMP E2 ON E1.MGR = E2.EMPNO; -- 강사님 풀이 SELECT E1.ENAME, E1.SAL, E2.ENAME AS MGR_ENAME, E2.SAL AS MGR_SAL, ABS(E2.SAL - E1.SAL) AS CHA, DENSE_RANK() O..

TIL/academy 2022.07.08

국비 TIL(Today I Learned) 20220707

1. 실습문제 -- 급여등급 중 짝수등급과 홀수등급의 급여합계 차이를 구하시오. -- 이거는 하다가 못함, 짝수등급, 홀수 등급 이어주는거를 못함 -- 조건 없을때 ON 1=1 SELECT SUM(E.SAL) AS HOL FROM EMP E INNER JOIN SALGRADE SG ON E.SAL BETWEEN SG.LOSAL AND SG.HISAL AND MOD(GRADE, 2) = '0'; SELECT SUM(E.SAL) AS HOL FROM EMP E INNER JOIN SALGRADE SG ON E.SAL BETWEEN SG.LOSAL AND SG.HISAL AND MOD(GRADE, 2) = '1'; SELECT J.JJACK, H.HOL, J.JJACK - H.HOL AS CHA FROM (S..

TIL/academy 2022.07.07

국비 TIL(Today I Learned) 20220706 오라클 조인(INNER JOIN, OUTER JOIN)

JOIN : 데이터를 이어준다. INNER JOIN : 조건이 TRUE인 것만 남기겠다. A와 B가 모두 조건에 부합하는 것만 남음 A INNER JOIN B ON 조건 OUTER JOIN : 해당 방향의 모든 데이터와 반대쪽의 경우 조건이 TRUE인것만 가져옴, 반대쪽 조건이 성립하지 않으면 NULL로 채움 A LEFT OUTER JOIN B ON 조건 A RIGHT OUTER JOIN B ON 조건 PRIMARY KEY: 주키, 데이터를 구분 지음, 주로 숫자로 되어있음, 주키가 있는곳이 부모데이터 FOREIGN KEY: 외래키, 다른데이터를 참조 1: N 직접참조: 데이터 간 직접적인 관계를 가지는 것, 조건의 ex) 부서번호 = 부서번호 N:1 간접참조: 데이터 간 범위나 특정 조건으로 간접적인 ..

TIL/academy 2022.07.06

국비 TIL(Today I Learned) 20220705 오라클 집계함수, HAVING, 순차함수, 서브 쿼리

집계 함수 집계 : 데이터를 수집 가공 SELECT 집계함수, 그 외 조건에 맞는것 FROM 데이터 * 집계 함수 사용 시 SELECT에 올 수 있는 것은 함수들과 GROUP BY에서 사용된 컬럼들만 올 수 있다. SUM(컬럼) : 합계, 값들의 총 합계 AVG(컬럼) : 평균, 값들의 평균 COUNT(컬럼 OR *) : 개수, ROW의 개수, 단, 지정 컬럼이 NULL이면 세지 않음 MAX(컬럼) : 최대값. 값들 중 최대값 MIN(컬럼) : 최소값. 값들 중 최소값 SELECT JOB, SUM(SAL) FROM EMP; 오류 데이터 취득 ↓ 데이터 압축 → 집계 실행 SELECT JOB, SUM(SAL) FROM EMP GROUP BY JOB; 데이터 취득 ↓ 기준점 추가 데이터 압축 → 기준점으로 ..

TIL/academy 2022.07.05

국비 TIL(Today I Learned) 20220704 오라클 ORDER BY, DUAL, 사칙연산, CASE, DECODE

ORDER BY DUAL 오라클 에러코드! 에러나면은 해당 코드로 구글링 해보고면 됨 오라클 정규식! 이런게 있다, 찾아보고 공부하래 조건1이 TRUE이면 값1을 돌려준다. 조건2가 TRUE으면 값2를 돌려준다 .... 조건들이 모두 FALSE이면 값N을 돌려준다. CASE가 미동작시 NULL CASE WHEN 조건1 THEN 값1 WHEN 조건2 THEN 값2 .... ELSE 값N END -- 조건1이 TRUE이면 값1을 돌려준다. 조건2가 TRUE으면 값2를 돌려준다 -- .... -- 조건들이 모두 FALSE이면 값N을 돌려준다. CASE가 미동작시 NULL CASE WHEN 조건1 THEN 값1 WHEN 조건2 THEN 값2 .... ELSE 값N END DECODE(값, 값1, 값2, 값3, ..

TIL/academy 2022.07.04
728x90