일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 웹 디자인 기능사
- oracle
- 혼자 공부하는 네트워크
- 혼자 공부하는 SQL
- 컴퓨터 활용 능력 1급
- 컴퓨터 구조
- INSERT
- Update
- 인덱스의 개념과 장단점
- 뷰
- 데이터모델링
- youtube review
- mysql 설치 방법과 정상 작동 확인하기
- 리눅스 마스터 2급
- 클러스터형 인덱스와 보조 인덱스
- sqld
- 혼자 공부하는 컴퓨터 구조 및 운영체제
- gitkraken을 통한 프로젝트 올리기
- 명령 프롬프트
- 데이터 모델링
- 혼자 공부하는 컴퓨터 구조 + 운영체제
- 열거형
- 친절한 SQL 튜닝
- 이것이 오라클이다
- github에 새 리포지토리 추가하기
- 2025-02-13
- 첫 프로그래밍
- delete
- 운영체제
- 컴퓨터 활용 능력
- Today
- Total
목록전체 글 (315)
코딩 브이로그

* Youtube Link - https://www.youtube.com/watch?v=fbqJDc5PJJc&list=PLVsNizTWUw7FzFgU1qe-n7_M7eMFA9d-f&index=24 인덱스의 내부 작동- B-Tree (균형 트리)루트 블럭과 리프 블럭으로 구성되어 있다.오라클에서는 한 블럭 당 8k정도 된다.루트 블럭은 각각의 리프 블럭의 첫 데이터만 가지고 있다고 볼 수 있다.리프 블럭에 데이터들은 동일하게 들어있다.찾을 때는 루트 블럭을 통해서 일일이 찾을 데이터를 더 빨리 찾을 수 있다.예를 들어 3만개의 리프 블럭이 있어도 2-3개의 블럭만에 찾을 수 있도록 하는 것이 바로 B-TREE 구조이다.- 인덱스 분할인덱싱해야 하기 때문에루프 블럭과 리프 블럭에서 '인덱스 분할'이 일어난다..

* Youtube Link - https://www.youtube.com/watch?v=qqgCwZ81tTs&list=PLVsNizTWUw7FzFgU1qe-n7_M7eMFA9d-f&index=23 대용량 데이터의 경우 인덱스가 없이는 사용이 불가능한 경우가 많다.9.1 인덱스의 개념'폭포수 모델'을 찾으려면 책 전체를 찾아봐야 한다.하지만 책의 찾아보기를 사용을 하면 쉽게 page를 찾을 수 있다.이것이 바로 인덱스다.500page를 뒤져서 찾던 것을 간단히 11page안에 찾는다. 엄청나게 효율이 좋다.인덱스의 장점 및 단점단점:- 인덱스를 추가하면 분량이 늘어난다. (10%정도 차지한다.)- 인덱스가 있다고 무조건 쓰는 것은 아니다. 찾는 데이터가 많다면, 인덱스를 왔다 갔다 하면 호율이 훨씬 악화된..

* Youtube Link - https://www.youtube.com/watch?v=qA8tflkxop0&list=PLVsNizTWUw7FzFgU1qe-n7_M7eMFA9d-f&index=22 뷰의 개념SELECT로 조회된 결과는 테이블이다.이 결과를 테이블로 만든 것이 뷰이다.뷰를 SELECT하면 결국 SELECT문이 실행되는 것이다.테이블처럼 접근하는 것이다.사용자는 뷰를 테이블로 착각하고 접근을 한다.제약은 있지만 데이터 수정도 가능하다.뷰의 장점- 보안에 도움이 된다. (정보를 가리고 보여줄 수 있다.)- 복잡한 쿼리를 단순화 시켜줄 수 있다. (복잡한 쿼리를 사용을 하면 뷰로 만들어서 처리를 할 수 있다.)뷰 실습- 뷰 생성CREATE OR REPLACE VIEW : 뷰를 생성하거나, 기존의..

* Youtube Link - https://www.youtube.com/watch?v=n95a3PgW1tQ&list=PL6i7rGeEmTvpLoDkB-kECcuD1zDt_gaPn&index=13 11. 스칼라 서브쿼리 문제스칼라 서브쿼리에서 ORDER BY는 문법에러ORDER BY 1은 첫번째 열을 기준으로 오름차순 정렬한다.서브쿼리에서 여러 개의 행이 반환되면 IN, ANY, ALL과 같은 다중행 서브쿼리 함수를 사용해야 한다.그러면 이렇게 위 그림처럼 들어갔다는 의미이다.- 스칼라 서브쿼리: SELECT 절에서 사용하는 서브쿼리- 인라인뷰 서브쿼리: FROM 절에서 사용하는 서브쿼리- 중첩 서브쿼리: WHERE 절에서 사용하는 서브쿼리서브쿼리는 메인쿼리의 컬럼을 모두 사용할 수 있다.메인쿼리에서는 ..

* Youtube Link - https://www.youtube.com/watch?v=qCAXD2ukvTE&list=PL6i7rGeEmTvpLoDkB-kECcuD1zDt_gaPn&index=12 01. 파티셔닝 기법파티셔닝이란어떤 테이블을 수평으로 쪼개는 것이다.그런데 이 테이블을 물리적으로 쪼개는 것이 아니라 논리적으로 쪼갠다.실제 테이블은 하나인데, 가상의 논리적으로 이렇게 하나의 테이블에 마치 3개의 테이블이 있는 것 처럼 사용하겠다.물리적으로 분할하지 않는다의 의미이다.- range partition: 데이터 값의 범위를 기준으로 파티션을 수행 (주로 주기, 날짜 범위)- list partition: 특정 값을 지정해서 파티션을 수행 (서울, 주기 x 항목)- hash partition: 직접 ..

* Youtube Link - https://www.youtube.com/watch?v=xkWzMYAqbqU&list=PL6i7rGeEmTvpLoDkB-kECcuD1zDt_gaPn&index=11 01. CUBE 의미CUBE를 사용하면 결합 가능한 모든 집계를 계산한다.예를 들어, GROUP BY CUBE(DEPTNO, JOB); 이면부서별 합계, 직업별 합계, 부서별 직업별 합계, 전체합계가 조회되는 것이다. 02. CROSS JOIN 문제CROSS JOIN은 ON 절을 사용할 수 없다.사용하면 에러가 발생한다.모든 경우의 수를 조회하는 조인이다. 03. ANSI JOINORACLE의 OUTER JOIN을 ANSI JOIN으로 바꾼 결과이다.정답은 (2)이다.04. 키의 종류 정답은 (3)이다.키는 식..

* Youtube Link - https://www.youtube.com/watch?v=aAYU18AGyDg&list=PL6i7rGeEmTvpLoDkB-kECcuD1zDt_gaPn&index=11 01. 파티션 문제MANAGER_ID를 파티션으로 나누어서 연봉으로 오름차순을 하고 처음 값 부터 누적계산을 하여SUM(SALARY)를 도출해낸다.이로써 또 다른 의미있는 데이터를 만들어낸다.AND CURRENT ROW와 같은 결과가 나온다.RANGE BETWEEN 10 PRECEDING AND 150 FOLLOWING을 하면예를 들어 SALARY가 2500인 열은 SALARY가 2490부터 2650까지의 범위를 만들어내고이를 파티션으로 COUNT(*)을 한 결과가 컬럼 TTT에 나오는 것이다.ROWS BETW..

* Youtube Link - https://www.youtube.com/watch?v=rDBZ6q0QqBU&list=PL6i7rGeEmTvpLoDkB-kECcuD1zDt_gaPn&index=9 01. SQL 조회 순서FROM -> WHERE -> GROUP BY -> HAVING -> SELECT -> ORDER BY 의 순서로 조회가 된다.HAVING의 경우 GROUP BY를 통해서 집계가 완료된 상태를 토대로 추가적인 필터링을 하는 것이다.그리고 SELECT를 통해서 해당하는 데이터가 출력이 된다.ORDER BY를 통해서 출력하는 대상을 특정 컬럼을 기준으로 정렬을 한다.그래서 순서를 잘 암기해야 한다. 02. 다중 컬럼 연산예를 들어 컬럼 IN (1,2,3); 이면컬럼 = 1 OR 컬럼 = 2 O..

* Youtube Link - https://www.youtube.com/watch?v=0RlRnjds4Co&list=PLVsNizTWUw7FzFgU1qe-n7_M7eMFA9d-f&index=21 8.1.3 임시 테이블메모리상에 생성되기 때문에 속도가 빠르다.기본형식CREATE GLOBAL TEMPORARY TABLE 테이블 이름(열 정의...)[ON COMMIT DELETE ROWS 또는 ON COMMIT PRESERVE ROWS]내용ON COMMIT DELETE ROWS : 커밋하면 테이블이 삭제된다. (디폴트 옵션)ON COMMIT PRESERVE ROWS: 세션이 종료되면(DB연결이 종료되면) 테이블은 삭제된다.tempTBL 임시 테이블을 생성 완료하였다.tempTBL이 로컬-tableDB 커넥션..

* Youtube Link - https://www.youtube.com/watch?v=40b8p9okBa4&list=PLVsNizTWUw7FzFgU1qe-n7_M7eMFA9d-f&index=20 8.1.2 제약 조건무결성을 지키는 제약 조건ID는 중복이 안 된다.학번, 사번 등이 이에 해당한다. 또는 일련번호, UUID등도 속한다.데이터베이스를 만드는 사람이 정한다. 정해진 약속은 없다.하지만 이름이 기본 키라면 같은 이름의 사람은 회원가입이 불가능할 것이다.테이블 중 기본 키가 없는 경우도 있다. 대부분의 테이블은 기본 키를 갖는다. 기본 키가 있는 것을 권장한다.테이블을 설정할 때 기본 키를 설정할 수 있다.제약 조건 확인USER_CONSTRAINTS 테이블을 통해서OWNER = 'TABLEDB'T..

* Youtube Link - https://www.youtube.com/watch?v=5ReqI3V1LxY&list=PLVsNizTWUw7FzFgU1qe-n7_M7eMFA9d-f&index=19 8.1 테이블SQL Developer를 통해서 GUI로 그림의 테이블들을 생성해보겠다.새로운 사용자 tableDB 를 만들었다.connect, resource, dba 권한을 부여하였다.새로운 접속을 만들었다.그리고 테이블을 두 건 만들었다.BUYTBL의 경우고급을 선택하고제약조건을 통해서USERTBL과 일대다 관계를 형성해준다.+를 선택하고새 외래 키 제약 조건을 선택하여다음과 같이 USERTBL의 PK를 외래키로 추가해준다.시퀀스를 우클릭하고새 시퀀스를 생성한다.이름이 IDSEQ 시퀀스를 생성하였다.다음으로..

* Youtube Link - https://www.youtube.com/watch?v=kNf-UnP0gAM&list=PLVsNizTWUw7FzFgU1qe-n7_M7eMFA9d-f&index=18 7.3 PL/SQL 프로그래밍DECLARE 명령문으로 변수를 선언하고BEGIN과 END 사이에 프로그래밍한다.7.3.1 IF...ELSE...SET SERVEROUTPUT ON;- SERVEROUTPUT 변수 ON으로 설정DBMS_OUTPUT.PUT_LINE('100입니다.');- 화면에 출력한다.IF var1 = 100 THEN DBMS_OUTPUT.PUT_LINE('100입니다.');ELSE DBMS_OUTPUT.PUT_LINE('100이 아닙니다.');END IF;- IF문을 통해서 프로그래밍을 한다...

* Youtube Link - https://www.youtube.com/watch?v=y_fKHQHon7k&list=PLVsNizTWUw7FzFgU1qe-n7_M7eMFA9d-f&index=16 7.2 조인(Join)조인: 두개의 테이블을 서로 연관해서 조회하는 것조인을 위해서는 두 개의 테이블이 필요하다.일대다의 관계가 가장 일반적이다.PK는 1 밖에 없다.FK는 여러개일 수도 있다. 조인의 종류7.2.1 INNER JOIN(내부 조인)INNER JOIN을 통해서 두 테이블이 서로 연관이 된다.ON하고 이렇게 조인될 조건을 적어주는 것이다. 그리고 연관된 테이블에서 WHERE 조건을 쓸 수 있다. [검색 조건]위 그림은 INNER조인의 형식이다.사용자 테이블과 구매 테이블이 연관된 두 개의 테이블을 ..

* Youtube Link - https://www.youtube.com/watch?v=ONvYEeJXQmo&list=PLVsNizTWUw7FzFgU1qe-n7_M7eMFA9d-f&index=15 들어가면서7장에서는 PL/SQL 고급을 다루어볼 예정이다. 7.1.1 Oracle에서 지원하는 데이터 형식의 종류숫자 데이텨 형식1바이트 -> 8비트 -> 00000000BINARY_FLOAT 4Bytes (32bit 부동 소수점)BINARY_DOUBLE 8Bytes (64bit 부동 소수점)NUMBER(p,[s]) 5~21Bytes (전체 자리수(p)와 소수점 이하 자리수(s)을 가진 숫자형.)문자 데이터 형식CHAR는 영문자NCHAR는 유니코드, 한글이 들어가는 경우 사용하면 됨.CHAR로 한글이 들어가도..