SQL

데이터 검색

별다방체리콕 2024. 1. 3. 11:30

 

 

 

 

 

 

 

 

관계형 데이터베이스 관리 개념 및 용어 정리

 

 

 

 

 

모델의 목적

  • 의사소통
  • 분류
  • 설명
  • 지정
  • 조사
  • 전개
  • 분석
  • 모방

 

 

 

 

 

 

 

 

 

ER 모델은 업무에 필요한 정보와 업무 내에서 수행되는 작업 구분

해당 작업을 변경할 수 있지만 정보 유형은 일관되게 유지됨

데이터 구조도 일관성 유지

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

관계

기호 설명
점선 "maybe" (선택적 요소)
실선 "must be" (필수 요소)
새 발 "one or more"
단일 행 "one and only one"

 

 

 

 

 

 

 

 

 

 

 

 

Primary Key 및 Foreign Key에 대한 지침

  • PK에서 중복 값 사용 X
  • PK는 일반적으로 변경 X
  • FK는 데이터 값을 기반으로 논리적 포인터임
  • FK 값은 PK 값이나 UK 값과 일치해야 함 그렇지 않을 경우 null
  • FK는 PK 나 UK 열 참조

 

 

 

 

 

 

 

 

 

  • 특정 사원에 필요한 모든 데이터를 나타내는 단일 행
    행의 순서는 중요 X
    테이블의 각 행은 중복 행을 허용하지 않는 PK로 식별

 

  • 사원 번호를 포함하는 열 또는 속성
    사원번호는 고유한 사원을 식별

 

  • 키 값이 아닌 열
    데이터를 저장할 때 열 순서는 중요 X
    데이터를 검색할 때 열 순서 지정
    테이블에 있는 일종의 데이터를 나타냄

 

  • 부서 번호를 포함하는 열 FK임
    FK는 테이블이 서로 연관되는 방식을 정의하는 열


  • 필드는 행과 열의 교차점에서 찾을 수 있음
    각 필드는 하나의 값만 가질 수 있음


  • 필드에 값이 없을 수도 있음 - null 값

 

 

 

 

 

 

 

 

 

 

SQL 및 개발 환경

 

 

SQL에서 제공하는 명령문

  • 데이터 query
  • 테이블에서 행 삽입, 갱신 및 삭제
  • 객체 생성, 대체, 변경 및 삭제
  • 데이터베이스 및 해당 객체에 대한 액세스 제어
  • 데이터베이스 일관성 및 무결성 보장

 

 

 

 

 

 

 

 

 

 

 

데이터 검색, 새 행 입력, 기존 행 변경, 행 삭제 SELECT, INSERT, UPDATE, DELETE, MERGE
데이터 구조 설정, 변경 및 제거 CREATE, ALTER, DROP, RENAME, TRUNCATE
데이터베이스와 그 안의 구조에 대한 권한 부여, 제거 GRANT, REVOKE
DML 문으로 변경한 내용 관리 COMMIT, ROLLBACK, SAVEPOINT

 

 

 

 

 

 

 

 

 

 

HR 스키마 및 테이블

 

 

 

💡 HR (Human Resources) 스키마는 오라클 예제 스키마 일부

 

 

 

 

 

 

더보기

모든 열 선택

 

 

 

 

더보기

특정 열 선택

 

 

 

 

 

 

 

 

 

SQL문 작성

  • 대소문자 구분 X
  • 한 줄 또는 여러 줄에 입력 가능
  • 키워드는 약어로 표기 X, 여러 줄에 걸쳐 입력 X
  • 절은 별도의 줄에 입력
  • 가독성을 높이기 위해 들여쓰기 사용
  • SQL Developer에서 SQl문은 선택적으로 세미콜론(;)으로 끝날 수 있음
  • SQL*Plus에서는 각 SQL문이 반드시 세미콜론(;)으로 끝나야 함

 

 

 

 

 

 

산술식

연산자 설명
+ 추가
- 빼기
* 곱하기
/ 나누기

 

 

 

 

 

더보기

산술연산자 사용

 

 

 

 

 

 

 

 

 

 

 

 

 

연산자 우선 순위

💡 산술식에 둘 이상의 연산자가 포함된 경우 곱하기와 나누기가 먼저 계산됨

 

 

 

 

 

 

 

 

 

 

 

 

괄호 사용

💡 괄호를 사용하여 연산자 실행 순서를 원하는 대로 지정

우선 순위 규칙 재정의

 

 

 

 

 

 

 

 

 

 

 

Null값 정의

💡 null은 사용할 수 없거나, 할당되지 않았거나, 알 수 없거나, 적용할 수 없는 값

null은 0이나 공백과는 다름

 

 

 

 

 

 

 

 

 

 

 

산술식의 Null 값

💡 null 값을 포함하는 산술식은 null로 계산됨

 

 

 

 

 

 

 

 

 

 

열 alias 정의

💡 열 alias

  • 열 머리글의 이름 변경
  • 계산에서 유용
  • 열 이름 바로 뒤에 나옴
  • 열 이름과 alias 사이에 선택사항인 AS 키워드가 올 수도 있음
  • 공백이나 특수 문자를 포함, 대소문자를 구분하는 경우 큰 따옴표 필요

 

 

 

 

 

 

 

 

 

 

연결연산자

  • 열이나 문자열을 다른 열에 연결
  • 두 개의 세로선 (||)으로 나타냄
  • 결과 열로 문자식 생성

 

 

 

 

 

 

 

 

 

연결연산자와 null 값

💡 문자열에 null 값을 결합할 경우 결과는 문자열

 

 

 

 

 

 

 

 

 

 

리터럴 문자열

💡 리터럴은 SELECT 문에 포함된 문자, 숫자 또는 날짜

  • 날짜 및 문자 리터럴 값은 작은 따옴표로 묶어야 함
  • 각 문자열은 반환되는 각 행에 한 번 출력

 

 

 

 

 

 

 

 

 

 

대체 인용(q) 연산자

  • 자신의 따옴표 구분자를 지정
  • 구분자를 임의로 선택
  • 가독성 및 사용성 증가

 

 

 

 

 

 

 

 

 

 

 

 

 

중복 행

💡 query 결과에는 중복 행을 포함한 모든 행이 표시됨

 

 

 

 

 

 

 

 

 

 

DISTINCT

💡 수식자 뒤에 여러 열을 지정할 수 있음

선택된 모든 열에 영향을 주며 결과에는 모든 고유한 열 조합이 나타남

 

 

 

 

 

 

 

 

 

 

테이블 구조 표시

  • DESCRIBE 명령을 사용하여 테이블의 구조 표시
  • Connections 트리에서 테이블을 선택하고 Columns 탭을 사용하여 테이블 구조 확인

 

 

 

 

 

DESCRIBE 명령 사용

데이터 유형 설명
NUMBER(p,s) 최대 자릿수가 p이고 소수점 이하 자릿수가 s인 숫자 값
VARCHAR2 (s) 최대 크기가 s인 가변 길이 문자 값
DATE 1월 1일에서 12월 31일 사이의 날짜 및 시간 값

'SQL' 카테고리의 다른 글

조인  (1) 2024.01.05
그룹 함수  (1) 2024.01.05
변환 함수  (1) 2024.01.05
단일행 함수  (2) 2024.01.05
데이터 제한  (1) 2024.01.04