테이블 구성 확인하기
-- 테이블 구성 살펴보기
-- DESC 테이블 명;
DESC EMP;
데이터를 조회하는 3가지 방법
행 단위로 조회하는 셀렉션
selection은 원하는 데이터를 행 단위로 조회하는 방식으로 테이블 전체 데이터 중 몇몇 가로줄의 데이터만 선택할 때 사용.
열 단위로 조회하는 프로젝션
projection은 원하는 데이터를 열 단위로 조회하는 방식
두 개 이상의 테이블을 사용하여 조회하는 조인
join은 2개 이상의 테이블을 좌우로 연결하여 마치 하나인 것처럼 데이터를 조회하는 방식
SELECT문
데이터베이스에 보관한 데이터를 조회할 때 사용하며 SELECT절과 FROM절을 기본 구성으로 SELEC문을 작성.
FROM절에는 조회할 데이터를 저장한 테이블 이름을 지정하고 SELECT절에는 FROM절에 명시한 테이블에서 조회할 열이나 여러 열에 저장된 데이터의 조합 또는 연산식을 지정할 수 있음.
-- 기본 형식
SELECT [조회할 열1 이름], [열2 이름], ..., [열n 이름]
FROM [조회할 테이블 이름];
| 키워드 | 필수 요소 | 설명 |
| SELECT | 조회할 열 이름이나 출력할 데이터를 하나 이상 지정 또는 애스터리스크(*)로 전체 열을 지정 |
SELECT절, 조회할 열을 지정 |
| FROM | 조회할 테이블 이름 | FROM절, 조회할 테이블을 지정 |
테이블 전체 열 조회하기
-- 테이블 전체 열 조회하기
-- SELECT * FROM 테이블명;
SELECT * FROM EMP;
테이블 부분 열 출력하기
-- 열을 쉼표로 구분하여 출력
-- SELECT 열 이름,
-- FROM 테이블명;
SELECT EMPNO, ENAME, DEPTNO
FROM EMP;
중복 데이터 삭제하기(DISTINCT)
DISTINCT는 조회한 데이터에서 불필요한 중복을 제거하고 특정 데이터 종류만 확인하고 싶을 때 유용함.
-- 열이 한 개일때
SELECT DISTINCT DEPTNO
FROM EMP;
-- 열이 여러 개일때
SELECT DISTINCT JOB, DEPTNO
FROM EMP;
-- ALL로 중복되는 열 제거하지 않고 그대로 출력하기
SELECT ALL JOB, DEPTNO
FROM EMP;
별칭(alias) 설정하기
SQL 구문에서는 출력할 열 이름을 임의로 지정할 수 있는데 본래 열 이름 대신 붙이는 이름을 별칭(alias)라고 함.
-- 열 연산식을 사용하여 출력하기
-- 만약 값이 NULL이면 출력 X
-- SAL*12+COMM = ANNSAL(연간 총 수입)
SELECT ENAME, SAL, SAL*12+COMM, COMM
FROM EMP;
-- 별칭을 사용하여 출력하기
SELECT ENAME, SAL, SAL*12+COMM AS ANNSAL, COMM
FROM EMP:
| 별칭 사용 방법(ex. ANNSAL) | 설명 |
| SAL*12+COMM ANNSAL | 연산식과 가공한 문장 이후 한 칸 띄고 별칭 지정 |
| SAL*12+COMM "ANNSAL" | 연산식과 가공한 문장 이후 한 칸 띄고 별칭을 큰따옴표로 묶어 지정 |
| SAL*12+COMM AS ANNSAL | 연산식과 가공한 문장 이후 한 칸 띈 후 AS, 한 칸 뒤에 별칭 지정 |
| SAL*12+COMM AS "ANNSAL" | 연산식과 가공한 문장 이후 한 칸 띈 후 AS, 한 칸 뒤에 별칭을 큰따옴표로 묶어 지정 |
ORDER BY절
원하는 순서로 출력 데이터를 정렬
-- 기본 형식
SELECT [조회할 열1 이름], [열2 이름], ...[열n 이름]
FROM [조회할 테이블 이름]
.
. (그 밖의 절)
.
ORDER BY [정렬하려는 열 이름(여러 열 지정 가능)] [정렬 옵션];
| 키워드 | 필수 요소 | 선택 요소 | 설명 |
| ORDER BY | 정렬하려는 열 이름을 하나 이상 지정 | 정렬하는 열마다 오름 차순(ASC), 내림차순(DESC)지정 |
ORDER BY절에 지정한 열은 먼저 지정한 열을 우선으로 정리하며, 정렬 옵션을 지정하지 않으면 오름차순(ASC)을 기본값으로 설정. |
-- 오름차순 사용하기
SELECT *
FROM EMP
ORDER BY SAL;
-- 내림차순 사용하기
SELECT *
FROM EMP
ORDER BY SAL DESC;
-- 각 열에 내림차순과 오름차순 동시에 사용하기
SELECT *
FROM EMP
ORDER BY DEPTNO ASC, SAL DESC;
*ORDER BY절을 사용한 정렬은 꼭 필요한 경우가 아니면 사용하지 않는것이 좋은데, 여기저기 흩어져 있는 데이터를 특정 기준에 따라 가지런히 순서를 맞추려면 많은 비용이 들기 때문.
'SQL' 카테고리의 다른 글
| [SQL] 데이터 처리와 가공을 위한 오라클 함수_2 (0) | 2025.11.30 |
|---|---|
| [SQL] 데이터 처리와 가공을 위한 오라클 함수_1 (0) | 2025.11.30 |
| [SQL] WHERE절과 연산자 (0) | 2025.11.30 |
| [SQL] 관계형 데이터베이스의 테이블과 키, 오라클 데이터베이스 (0) | 2025.11.18 |
| [SQL] 데이터베이스와 SQL (0) | 2025.11.18 |