💻Programming/Oracle

[Oracle/오라클] 데이터 조작 명령문 (SELECT문)

horang_dev 2021. 3. 11. 23:18

 SELECT문 

 - 자료 검색 명령문

 - SQL에서 가장 많이 사용

 - SELECT절과 FROM절은 절대 생략 불가

 - 실행 순서 

    ① FROM절 : 메모리에 테이블 로드

    ② WHERE절 : 조건에 맞는 행 선택

    ③ SELECT절 : 해당되는 컬럼 선택

 SELECT [DISTINCT] * |[컬럼명1 [AS] ["]컬럼별칭["],] 
                      [컬럼명2 [AS] ["]컬럼별칭["],]
                                   :
                      [컬럼명n [AS] ["]컬럼별칭["]]
   FROM 테이블명
 [WHERE 조건1
   [AND 조건2....]]
 [GROUP BY 컬럼명1[, 컬럼명2,...]] -- 집계함수 사용
[HAVING 조건1[,조건2,...]] -- 집계함수가 적용된 자체에 조건이 부여될땐 HAVING 사용
 [ORDER BY 컬럼인덱스|컬럼명1[ASC|DESC][, -- 정렬 ASC :오름차순, DESC :내림차순 | 생략되면 ASC
           컬럼인덱스|컬럼명2,...]; -- 컬럼인덱스 : SELECT절에 작성되어 있는 컬럼의 순서


-- 컬럼별칭 : 출력할때 컬럼명이 됨. 컬럼별칭에 공백과 특수문자가 있거나 명령어를 별칭으로 사용할땐 (" ") 반드시 사용 
-- FROM 절 : 결과로 출력할 테이블 선택      
-- WHERE 절 : 결과로 출력할 행 선택 (생략 가능)
--집계함수 : 합계(SUM), 갯수(COUNT), 평균(AVERAGE), 최댓값(MAXIMUM), 최솟값(MINIMUM)

 1) SELECT

    - 검색할 컬럼에 관련된 절

    - 가장 늦게 실행됨

    - ' * ' 작성 시 해당 테이블의 모든 컬럼 출력 

   

SELECT [DISTINCT] * |[컬럼명1 [AS] ["]컬럼별칭["],] 
                            [컬럼명2 [AS] ["]컬럼별칭["],]
                                             :
                            [컬럼명n [AS] ["]컬럼별칭["]]
   

    - DISTINCT : 중복된 자료를 배제하여 결과를 출력함

ex) 회원테이블에서 회원들이 가지고 있는 취미(mem_like)를 조회하시오.
    SELECT DISTINCT mem_like AS 취미
      FROM member;

    - 컬럼별칭 : 컬럼에 부여하는 별도의 이름.

                    해당 컬럼의 제목이나 서브쿼리 사용시 컬럼의 값을 참조하기 위해 사용됨.

    - 컬럼별칭의 특수문자 (공백이나 기호, 예약어)가 사용될 때에는 " " 로 묶어 사용

    - AS 는 생략 가능하나 가독성을 위해 작성하는 것을 권장

    - 컬럼별칭은 해당 SELECT문의 WHERE절 등에 사용 할 수 없음.

반응형