메뉴 여닫기
개인 메뉴 토글
로그인하지 않음
만약 지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
Oracle (토론 | 기여)님의 2024년 11월 30일 (토) 12:15 판 (새 문서: 아래는 Oracle SQL 초보자를 위한 커리큘럼을 세분화하고 각 항목에 Step-by-Step으로 학습 예제를 추가한 상세 내용입니다. 학생들이 단계별로 실습을 통해 이해도를 높일 수 있도록 구성했습니다. 1. Oracle SQL 기본 개념 1.1 데이터베이스와 SQL 개요 • 설명: 데이터베이스와 SQL의 역할 이해 • 예제: Oracle 데이터베이스를 설치하고 Oracle SQL Developer 접속 1.2 기본 SQL 문법...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

아래는 Oracle SQL 초보자를 위한 커리큘럼을 세분화하고 각 항목에 Step-by-Step으로 학습 예제를 추가한 상세 내용입니다. 학생들이 단계별로 실습을 통해 이해도를 높일 수 있도록 구성했습니다.

1. Oracle SQL 기본 개념

1.1 데이터베이스와 SQL 개요

• 설명: 데이터베이스와 SQL의 역할 이해 • 예제: Oracle 데이터베이스를 설치하고 Oracle SQL Developer 접속

1.2 기본 SQL 문법 이해

• SELECT 문 기본 구조

SELECT 'Hello, Oracle SQL!' AS greeting FROM DUAL;

• DUAL: Oracle에서 테스트 쿼리를 실행할 때 사용되는 가상 테이블

1.3 데이터 타입

• 설명: 자주 사용하는 데이터 타입 익히기 • 예제: 테이블 생성 예제

CREATE TABLE sample_table (

   id NUMBER(5),
   name VARCHAR2(50),
   salary NUMBER(10, 2),
   hire_date DATE

);

2. 데이터 검색 및 필터링

2.1 SELECT 및 WHERE 사용

• 설명: 특정 조건의 데이터 검색 • 예제:

SELECT name, salary FROM employees WHERE salary > 5000;

2.2 정렬

• 설명: 데이터를 특정 기준으로 정렬 • 예제:

SELECT name, salary FROM employees ORDER BY salary DESC;

2.3 비교 및 논리 연산자

• 예제:

SELECT name, department_id FROM employees WHERE department_id IN (10, 20) AND salary > 3000;

3. SQL 함수 활용

3.1 문자열 함수

• 설명: 문자열 데이터를 변환하는 함수 활용 • 예제:

SELECT UPPER(name) AS uppercase_name,

      LOWER(name) AS lowercase_name,
      SUBSTR(name, 1, 3) AS short_name

FROM employees;

3.2 숫자 함수

• 예제:

SELECT salary, ROUND(salary, -2) AS rounded_salary FROM employees;

3.3 날짜 함수

• 예제:

SELECT hire_date, SYSDATE AS today,

      MONTHS_BETWEEN(SYSDATE, hire_date) AS months_worked

FROM employees;

4. 데이터 정렬 및 그룹화

4.1 GROUP BY

• 예제:

SELECT department_id, AVG(salary) AS avg_salary FROM employees GROUP BY department_id;

4.2 HAVING

• 예제:

SELECT department_id, AVG(salary) AS avg_salary FROM employees GROUP BY department_id HAVING AVG(salary) > 5000;

5. 데이터 조작

5.1 데이터 삽입

• 예제:

INSERT INTO employees (id, name, salary, hire_date) VALUES (101, 'John Doe', 4000, SYSDATE);

5.2 데이터 수정

• 예제:

UPDATE employees SET salary = salary * 1.1 WHERE department_id = 10;

5.3 데이터 삭제

• 예제:

DELETE FROM employees WHERE department_id = 20;

6. 테이블 생성 및 관리

6.1 테이블 생성

• 예제:

CREATE TABLE departments (

   department_id NUMBER PRIMARY KEY,
   department_name VARCHAR2(100)

);

6.2 테이블 수정

• 예제:

ALTER TABLE departments ADD location_id NUMBER;

6.3 테이블 삭제

• 예제:

DROP TABLE departments;

7. 데이터 간 관계 설정

7.1 조인

• 예제:

SELECT e.name, d.department_name FROM employees e INNER JOIN departments d ON e.department_id = d.department_id;

7.2 서브쿼리

• 예제:

SELECT name FROM employees WHERE department_id = (SELECT department_id FROM departments WHERE department_name = 'HR');

8. 고급 SQL

8.1 뷰 생성

• 예제:

CREATE VIEW employee_summary AS SELECT department_id, COUNT(*) AS num_employees FROM employees GROUP BY department_id;

8.2 계층적 쿼리

• 예제:

SELECT employee_id, manager_id, LEVEL FROM employees START WITH manager_id IS NULL CONNECT BY PRIOR employee_id = manager_id;

8.3 집합 연산자

• 예제:

SELECT name FROM employees WHERE department_id = 10 UNION SELECT name FROM employees WHERE salary > 8000;

9. 성능 최적화

9.1 인덱스

• 예제:

CREATE INDEX idx_employee_salary ON employees(salary);

9.2 실행 계획

• 예제:

EXPLAIN PLAN FOR SELECT * FROM employees WHERE salary > 5000;

이 커리큘럼에 따라 차근차근 학습을 진행하면 초보자도 Oracle SQL의 핵심 내용을 체계적으로 이해하고 실습할 수 있습니다. 각 단계마다 연습 문제를 포함하여 학습 효과를 극대화할 수 있습니다!