코딩항해기
[DBMS/Oracle] SELECT문 (+DISTINCT, AS, ORDER BY) 본문
데이터 선정 방식에 따른 분류
셀렉션 | 행 단위로 조회 | ex) WHRER절 등 |
프로젝션 | 열 단위로 조회 | ex) SELECT 컬럼명, 컬럼명 ... 등 |
조인 | 두 개 이상의 테이블을 사용하여 조회 | ex) INNER JOIN, OUTER JOIN 등 |
SELECT문
SELECT문은 데이터베이스에 보관되어있는 데이터를 조회하는데 사용되는 구문이다.
SELECT절과 FROM절을 기본 구성으로 작성하게 되며,
SELECT 조회할 컬럼을, FROM절은 대상이 되는 테이블을 지정한다.
SELECT 컬럼명1, 컬럼명2 FROM 테이블명;
-- *(애스터리스크)로 전체 컬럼을 조회할 수도 있지만 성능에 문제가 있어 잘 사용되지 않는다.
SELECT문은 컬럼을 지정하는 것 외에도 다양한 기능을 할 수 있는데,
컬럼의 별칭을 지정할 수도 있고, 중복값을 제거할 수도 있고, 연산을 할 수도 있고, 지정된 값을 보여주는 것도 가능하다.
DISTINCT
DISTINCT를 명시하면 중복값을 제거하여 보여줄 수 있다. 실제로 테이블의 값이 변경되는 것은 아니다.
SELECT문에서 컬럼명을 나열하기 전에 명시하면, 데이터를 불러올 때 중복되는 열을 제외하고 출력한다.
SELECT DISTINCT 컬럼명1, 컬럼명2 FROM 테이블명;
--컬럼1, 컬럼2의 값이 모두 중복되는 열이 있다면, 해당 열을 제외하고 보여준다.
반대되는 기능으로는 ALL이 있는데, ALL은 중복을 상관하지 않고 보여주며, 기본으로 지정되어있는 설정이다.
따라서 생략 가능하다.
컬럼 별칭 alias
SELECT문으로 조회하게 되면 상단에 컬럼명이 명시되는데, 이 컬럼명을 변경하여 보여주고 싶을 때 사용하는 설정이다.
(연산을 하게 되면 연산식이 컬럼명으로 뜨게 된다.)
SELECT
컬럼명1 별칭
, 컬럼명2 "별 칭"
, 컬럼명3 AS 별칭
, 컬럼명4 AS "별 칭"
FROM 테이블명;
-- ""를 사용하면 띄어쓰기를 포함할 수 있다.
-- AS는 생략가능하지만 가독성을 위해 넣어주는 것이 좋다.
ORDER BY
ORDER BY절은 데이터 정렬의 역할을 수행한다.
가장 마지막 자리에 위치하게 되며, 정렬대상이 되는 컬럼을 지정하고, 정렬 옵션을 작성한다.
SELECT 컬럼명1, 컬럼명2 FROM 테이블명 ORDER BY 컬럼명1 DESC;
-- DESC 내림차순 정렬
-- ASC 오름차순 정렬 (기본값으로 생략가능하다.)
기타
그 외에도 WHERE절 GROUP BY절, ROWNUM 등 다양한 기능이 있다.
다른 기능들은 차례로 다른 게시글로 정리해보겠다.
'DBMS > Oracle' 카테고리의 다른 글
[DBMS/Oracle] 오라클 함수 (문자, 숫자, 날짜, 형변환 등) (0) | 2024.07.29 |
---|---|
[DBMS/Oracle] WHERE절과 연산자 (0) | 2024.07.28 |
[DBMS/Oracle] 데이터 모델링 (0) | 2024.07.08 |
[DBMS/Oracle] 식별자 (0) | 2024.07.08 |
[DBMS/Oracle] 시퀀스 SEQUENCE (0) | 2024.07.07 |