02. SELECT 문

CHOISUJIN·2023년 1월 9일
1
post-thumbnail

SELECT (조회)

--> DQL 또는 DML

📍 작성법
SELECT 컬럼명 FROM 테이블명;

SELECT EMP_ID, EMP_NAME, HIRE_DATE
FROM EMPLOYEE;

📌 컴퓨터가 인식하는 문법 순서

.3. SELECT 절 : SELECT 컬럼
1. FROM절 : FROM 테이블
2. WHERE절(조건절) : WHERE 컬럼명 연산자 값;
4. ORDER BY 컬럼명 [ASC 오름차순(기본값) | DESC 내림차순][NULLS FIRST | LAST]

📌 연산자 우선 순위

  1. 산술연산자 ( + - * / )
  2. 연결연산자 ( || )
  3. 비교연산자 ( > < >= <= = != <> )
  4. IS NULL / IS NOT NULL, LIKE, IN / NOT IN
  5. BETWEEN AND / NOT BETWEEN AND
  6. NOT(논리연산자)
  7. AND(논리연산자)
  8. OR(논리연산자)

📌 비교연산자

: >, <, >=, <=, =, !=, <>

📌 논리연산자 : AND, OR

  • BETWEEN A AND B
    WHERE 컬럼명 BETWEEN A AND B : A이상 B이하

📌 LIKE

📍 작성법
WHERE 컬럼명 LIKE '패턴이 적용된 값'

  • % : 포함
  • _ : 글자 수

ESCAPE

보통 #, ^를 많이 씀

📍 작성법
WHERE EMAIL LIKE '__#%' ESCAPE '#';
--> 이메일 _앞에 글자가 ___세 글자인 사원

SELECT EMP_NAME ,EMAIL 
FROM EMPLOYEE
WHERE EMAIL LIKE '___#_%' ESCAPE '#';

📌 IN 연산자

: 비교하려는 값과 목록에 작성된 값 중 일치하는 것이 있으면 조회하는 연산자

📍 작성법
WHERE 컬럼명 IN(값1, 값2, 값3 ....)

IS NULL / IS NOT NULL

  • IS NULL : NULL인 경우 조회
  • IS NOT NULL : NULL이 아닌 경우

    📍 작성법
    WHERE 컬럼명 IS NULL;

SELECT EMP_NAME , BONUS 
FROM EMPLOYEE
WHERE BONUS IS NOT NULL;

📌 ORDER BY 절 (정렬)

📍 작성법
ORDER BY 컬럼명 [ASC | DESC];
--> ASC : 오름차순 (기본값)
--> DESC : 내림차순

SELECT EMP_ID , EMP_NAME , SALARY 
FROM EMPLOYEE
WHERE SALARY >= 2000000
ORDER BY SALARY DESC;
  • 정렬 중첩 : 대분류 정렬 후 소분류 정렬
SELECT EMP_NAME , DEPT_CODE , SALARY 
FROM EMPLOYEE 
ORDER BY DEPT_CODE, SALARY DESC;

--> 부서별(DEPT_CODE)로 급여 내림차순 정렬
D1부서에서 급여 가장 많은 ~ 가장 적은 사람까지 내림차순 정렬
D2부서에서 급여 가장 많은 ~ 가장 적은 사람까지 내림차순 정렬

📌 날짜(DATE) 타입

  • SYSDATE : 시스템상의 현재 시간(날짜)를 나타내는 상수
    날짜 +/- 연산 가능 (일 단위)

📌 컬럼 별칭 지정

📍 작성법
컬럼명 AS 별칭 : 별칭 띄어쓰기 X, 특수문자 X, 문자만 O
컬럼명 AS "별칭" : 별칭 띄어쓰기 O, 특수문자 O, 문자O
--> AS는 생략 가능

profile
매일매일 머리 터지는 중 ᕙ(•̀‸•́‶)ᕗ

0개의 댓글