✅WHERE 절
: WHERE 절은 FROM절 다음에 위치. WHERE절을 이용하여 자료들에 대해 제한할 수 있음
✅연산자의 종류
1) 비교 연산자(부정 비교 연산자 포함)
2) SQL 연산자(부정 SQL 연산자 포함: NOT BETWEEN A AND B, NOT IN, IS NOT NULL)
3) 논리 연산자 : AND, OR, NOT
✅연산자의 우선순위
- 괄호
- NOT 연산자
- 비교 연산자, SQL 비교 연산자
- AND
- OR
✅와일드 카드
% | 0개 이상의 어떤 문자를 의미 |
_ | 1개인 단일 문자를 의미 |
ex.
%수원시% : 수원시가 들어가는 모든 데이터(시작, 끝단어 상관없음)
%수원시 : 수원시로 끝나는 데이터 조회
‘박_ _’ : _언더바 하나는 단일문자 하나를 뜻하므로 박oo인 사람들만 조회됨
✅문자 유형 비교 방법🌟
1) 양쪽이 모두 CHAR 타입인 경우
: 길이가 서로 다르면 작은 쪽에 공백을 추가하여 길이를 같게 함
: 서로 다른 문자가 나올 때까지 비교
: 달라진 첫번째 값에 따라 크기를 결정
: 공백의 수만 다르다면 같은 값으로 결정
2) 비교연산자 중 한 쪽이 VARCHAR인 경우
: 서로 다른 문자가 나올 때까지 비교
: 길이가 다르면 짧은 것이 끝날 때까지만 비교 -> 길이가 긴 것이 크다고 판단
: 길이가 같고 다른 것이 없다면 같다고 판단
: VARCHAR는 공백도 문자로 판단
✅단일행 함수 특징
: SELECT, WHERE, ORDER BY 절에 사용 가능
: 각 행들에 대해 개별적으로 작용. 각각의 행에 대한 조작 결과를 리턴
: 여러 인자를 입력해도 단 하나의 결과만 리턴
: 특별한 경우가 아니라면 함수의 중첩이 가능(=함수 안에 함수의 사용이 가능)
✅단일행 함수 종류
문자형 함수 | 문자 입력하면 문자나 숫자값을 반환 LOWER, UPPER, SUBSTR, LENGTH, LTRIM, RTRIM, TRIM, ASCII |
숫자형 함수 | 숫자를 입력하면 숫자값을 반환 |
날짜형 함수 | DATE 타입의 값을 연산 |
변환형 함수 | 문자, 숫자, 날짜형의 값의 데이터 타입을 변환 |
NULL 관련 함수 | NULL을 처리하기 위한 함수 NVL, NULLIF, COALESCE |
NULL은 어떠한 연산 결과도 NULL값임.
COUNT(*)만 NULL값 포함한 행의 수를 출력!
NULL은 집계함수에 관여하지 않음(나머지 행들만 계산)
✅SELECT 문의 실행 순서 -> FWGHSO로 암기
FROM절 -> WHERE절 -> GROUP BY절 -> HAVING절 -> SELECT절 -> ORDER BY절
✅조인(JOIN)
: 두 개 이상의 테이블들을 연결 또는 결합하여 데이터를 출력하는 것.
: 일반적으로 사용되는 SQL문의 상당수가 조인으로 이루어져 있다(업무에서 필연적으로 발생할 수밖에 없음)
: 일반적인 경우 PK와 FK의 값 연관에 의해 조인이 이루어지며, PK, FK관계와는 별도로 일반 컬럼끼리 조인이 이루어지는 경우도 있다.
✅최소로 필요한 조인 조건의 개수🌟
: 조인되는 테이블의 수 - 1
'데이터 분석' 카테고리의 다른 글
[SQLD] 개념정리 - SQL 기본(1): DML, DDL, DCL, TCL, 트랜잭션 (1) | 2023.09.07 |
---|---|
[SQLD] 개념정리 - 데이터 모델과 성능(2): 테이블 분할, 슈퍼/서브 타입, 분산 데이터베이스 (0) | 2023.09.05 |
[SQLD] 개념정리 - 데이터 모델과 성능(1): 성능 데이터 모델링, 정규화, 반정규화 (0) | 2023.09.03 |
[SQLD] 개념정리 - 데이터 모델링의 이해(3): 관계, 식별자, 식별자관계 (2) | 2023.09.02 |
[SQLD] 개념정리 - 데이터 모델링의 이해(2): 엔터티, 인스턴스, 속성 (0) | 2023.08.18 |