[SQL] 자습서 2장 - SELECT(1)

2023. 2. 20. 19:28·개발/SQL

DML(Data Manipulation Language)

DB를 조회, 삽입, 삭제, 변경한다. SELECT, INSERT, DELETE, UPDATE 명령 등이 있다. 다른 명령은 SELECT 문과는 다르게 데이터베이스의 내용을 변경하는 작업을 수행함으로 SELECT 문에 비해서 훨씬 주의깊게 계획되고 실행되어야 한다. 이렇게 DML 작업은 이전과는 달리 안전한 작업과정과 결과가 요구됨으로 이를 위해 오라클은 DML 작업을 트랜잭션이라는 단위로 관리한다.

 

SELECT

SELECT는 테이블의 데이터를 읽어 출력하는데 이 동작을 조회라고 한다. 테이블을 조회하는 것은 가장 기본적인 동작이며 SELECT 문은 모든 SQL 명령중 사용 빈도가 가장 높다. 테이블을 읽는 동작은 단순하지만 옵션이 많다. 관심 있는 필드만 읽거나 조건을 지정하여 일부 레코드만 조회할 수 있고 정렬 기준을 지정하여 출력 순서를 조정할 수 있다.

실습을 위해 준비된 emp(사원 정보) 테이블에서 몇 가지 조회를 해보도록 하겠다.

SELECT 문의 기본 형식은 이렇다.

SELECT 필드목록 FROM 테이블 [WHERE 조건] [ORDER BY 정렬 기준]

*의 의미는 전체 데이터를 다 출력해달라는 의미이다. 그러므로 위 쿼리문의 의미는 emp 테이블에서 전체 데이터를 출력하라 라는 의미이다. 결과를 보면 아래와 같이 나온다.

emp 테이블에는 사번, 이름, 업부, 매니저번호, 고용일, 월급, 보너스, 부서번호 필드가 있고, 각 필드값으로 구성된 레코드들이 존재한다. 이 중에서 아이유의 정보만 출력하고 싶다면 조건이 들어가는 WHERE 절에 조건을 추가하여

SELECT * FROM emp WHERE ename = '아이유';  로 검색하면 된다.

 

출력을 할 때 특정 필드값을 오름차순 또는 내림차순으로 정렬하여 출력하고 싶은 경우도 있을 것이다. 그럴 때는 ORDER BY 절을 사용하여 정렬을 하면 되는데, 예를 들어 emp 테이블에서 월급 순으로 직원을 출력하고 싶다면 아래와 같이 입력하면 된다.

ORDER BY sal DESC; 는 월급(sal)을 기준으로 정렬해달라는 의미인데 끝에 DESC가 붙으면 내림차순으로 정렬해 달라는 의미이다. ASC는 오름차순으로 정렬인데 기본으로 오름차순 정렬을 하니 생략가능하다.

결과(위의 null은 무시)

 

'개발 > SQL' 카테고리의 다른 글

[SQL] 자습서 1장 - DB  (0) 2023.02.14
[SQL] 자습서 0장 - DB설치  (0) 2023.02.02
'개발/SQL' 카테고리의 다른 글
  • [SQL] 자습서 1장 - DB
  • [SQL] 자습서 0장 - DB설치
Majangnan
Majangnan
  • Majangnan
    개발 모코코
    Majangnan
  • 전체
    오늘
    어제
    • 분류 전체보기 (55) N
      • 개발 (54) N
        • C# (10)
        • SQL (3)
        • Unity (8)
        • Unreal (10)
        • C++ (2)
        • Server (1)
        • DX11 (8)
        • 알고리즘 (11) N
  • 블로그 메뉴

    • 홈
    • 방명록
    • 깃허브
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    DirectX11
    C#
    코딩테스트
    상속
    알고리즘
    Unity
    블루프린트
    DX11
    UnReal
    Mecanim
    백준
    언리얼
    dx3d
    c++
    MAC
    blueprint
    sql
    3dlight
    프로그래머스
    슈팅게임
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Majangnan
[SQL] 자습서 2장 - SELECT(1)
상단으로

티스토리툴바