반응형
RDBMS와 SQL
RDBMS(관계형 데이터베이스 관리 시스템)는 데이터를 필드(Field, 속성)와 레코드(Record, 데이터 단위)로 구성된 테이블(Table) 형식으로 구조화하여 저장하고 관리하는 소프트웨어 시스템 이다
이 시스템 내에 저장된 데이터를 제어(조회·입력·수정·삭제)하기 위해서는 반드시 SQL(구조화 질의 언어)이라는 표준 통신 언어를 사용해야 한다
SQL 명령어 종류
| 1. DQL(질의) | SELECT | 데이터를 조회할 때 사용 |
| 2. DML(조작) | INSERT, UPDATE, DELETE | 데이터 입력, 수정, 삭제 |
| 3. TCL(제어) | COMMIT, ROLLBACK | 작업을 확정 혹은 취소(되돌리기) |
| 4. DDL(정의) | CREATE, ALTER, DROP | 테이블 자체를 생성, 변경, 삭제 |
효율적인 실습 환경을 위한 환경 설정
터미널 환경에서 가독성을 높이기 위해 세팅을 먼저 해놓는다
| 1. 메모장을 켜서 기본값 명령어들을 적는다 set line 100 set pages 100 cold ename format a10 * ename 이 아닌 dname 을 적으면 HDATE 가 나오게 된다 col job format a10 => 자동 실행이 안되므로 메모장에 저장을 해놔야 한다 2. 파일이름 login.sql 로 바꾸고, 파일 형식은 모든 파일로 바꾼다 (저장은 사용자 - ast19 폴더 안에 넣는다) 3. cmd 에서 @login 을 입력하고, select * from emp; 를 입력 하면 테이블이 깔끔하게 나온다 * 매번 설정을 입력하기 번거로우므로, 메모장에 자주 쓰는 설정을 적어 login.sql로 저장한 뒤 @login 명령어로 한 번에 불러올 수 있다 |
테이블 각 용어들 정리

| 1. ENO | 사번 |
| 2. JOB | 하고 있는 업무 |
| 3. MGR | 사수 사번 (안영희, 손하늘, 이승철이 안영숙의 사수가 됨) |
| 4. COMM | 1년에 받는 보너스 |
| 5. HDATE | 입사일 |
| 6. SAL | 매달 받는 급여 |
| 7. DNO | 속해있는 부서 번호 |
| 💡참고사항 김선유 -=> 남 * 이렇게 데이터가 잘못 적혀 있는 것을 무결성 오류 라고 한다 |
각 명령어 정리 (+ 예시)
| col [컬럼명] format a20: 해당 컬럼의 출력 길이를 20자로 고정(텍스트가 잘리거나 너무 길 때 사용) * col tname format a20 * col job format a10 - 테이블에서 job도 짧게 나오게 하고 싶을 때 set line 100: 한줄에 출력될 글자수를 100으로 설정 set pages 100: 페이지당 출력 행수 설정 clear screen: 화면을 깨끗하게 지움 decs emp: 컬럼의 이름이 어떤건지만 확인하고 싶을 때 * 어떤 컬럼에 어떤 데이터가 있는지 중요하다 |
셀프 조인(Self Join)
자기 테이블을 스스로참조해서 조인하는 방식
예시1)


| 1. 왼쪽 그림 명령어: select * from dept; / 오른쪽 그림 명령어: select * from emp; 가 있다 2. 여기에서 안영희의 직무는(=DNO) 01 총무이며, 부서의 위치는(=LOC) 서울 이다 이렇게 테이블을 참고하여 상하 관계를 파악하는 방식을 셀프 조인 이라고 한다 * loc: 부서의 위치 * 만약 데이터를 추가 해야 될때 부모 테이블(select from dept----ex) 먼저 입력 -> 자식 테이블(select from emp -----ex을 입력하면 된다 |
예시2)

SELECT * from salgrade; 명령어를 입력 하고, select * from emp; 로 급여 등급을 색출 해낼 수 있다 - 김선유 - 5등급
| 💡참고사항 relation: 행이 될지 테이블이 될지는 문서를 정확히 읽어 봐야 한다 ( 다 다르게 사용 하고 있다) |
'Infra & Security Eng > Database Engineering' 카테고리의 다른 글
| SQL - WHERE절 (기본 개념, 다양한 조건 검색, 날짜 검색, 관계 연산자와 부정 연산자) (0) | 2026.01.28 |
|---|---|
| 정렬 문제 (0) | 2026.01.27 |
| ORDER BY절 이용한 정렬(기본 규칙, 정렬 검색, 묶음 검색) (0) | 2026.01.27 |
| SQL - SELECT 문 문제 (0) | 2026.01.27 |
| SELECT문 기본 문법과 활용, 테이블 목록 및 구조 확인, 올바른 데이터 검색, NVL 함수, 연결 연산자 검색, 중복 제거와 정렬 (0) | 2026.01.26 |