DAY 4. WHERE문에 조건절을 활용한 데이터 조건 주기
※ 조건을 지정하여 테이블에서 자료를 추출하는 방법 ※ WHERE 조건절은 SQL에 ‘필터’ 기능
💡 숫자 및 문자/날짜형 데이터 필터링
- 특정한 테이블에서 특정한 조건을 만족하는 데이터를 추출하여 나타내라
- 숫자형 데이터 조건
- 테이블 명 다음에 WHERE을 적고 조건을 숫자로 기재
SELECT 열 이름1, 열 이름2 FROM 테이블명 WHERE 비교할 열 이름 = 숫자;
- 문자/날짜형 데이터 조건
- 테이블명 다음에 WHERE을 적고 조건을 기재하는 것은 동일하나 작은따옴표(’’)안에 문자로 기재한다는 차이
SELECT 열 이름1, 열 이름2 FROM 테이블명 WHERE 비교할 열 이름 = '문자';
💡 비교/산술 연산자
- 비교연산자
SELECT 열 이름 FROM 테이블명 WHERE 비교할 열 이름 비교연산자 비교할 대상;
비교연산자 설명 A = B A와 B가 같다 A <> B A와 B가 같지 않다 A != B A와 B가 같지 않다 A ^= B A와 B가 같지 않다 A < B A가 B보다 작다 = A가 B미만이다 A <= B A가 B보다 작거나 같다 = A가 B이하이다 A > B A가 B보다 크다 = A가 B초과이다 A >= B A가 B보다 크거나 같다 = A가 B이상이다 BETWEEN A AND B 지정된 두 값 사이에 있는지 확인하는 경우 사용한다 IS NULL NULL값을 가진 열을 검색하는 경우 사용한다 IS NOT NULL NULL값이 아닌 열을 검색하는 경우 사용한다
- 산술연산자
※SELECT문에서 사용하는 산술연산자는 새로운 별칭을 주는 AS와 같이 사용되는 경우가 많다SELECT 열 이름1, 열 이름2 산술연산자 열 이름3 AS 새로운 이름 FROM 테이블명;
산술연산자 설명 + 더하기 - 빼기 * 곱하기 / 나누기 - ※비즈니스 세계에서 유용한 ‘티켓 사이즈(Ticket Size)’ 개념 = 인당 구매금액, 인당 가입금액 등 직관적으로 고객 당 수익이나 가입금액이 얼마인지 알려주는 아주 유용한 개념
- NULL 값의 처리 = 결측치 처리 (Missing Value Imutation) 방법
- 결측치는 자료의 처리결과에 영향을 미친다. 열이 숫자형인 경우, NULL을 0으로 치환하는 것 이외에도 정규분포를 이용한 평균값으로 치환하거나 분포가정이 없는 중위값으로 치환할 수 있다.
- COALESCE 함수의 문법
- NULL 값을 0으로 치환할 때 많이 사용한다.
- EXPRESSION 1이 NULL값이 아니면 EXPRESSION 1을 리턴하고, EXPRESSION 1이 NULL값이고 EXPRESSION 2가 NULL값이 아니면 EXPRESSION 2를 출력
- 문법에서 정의된 열 중 NULL이 아닌 첫 번째 값을 화면에 출력하는 역할을 한다 ex. COALESCE (열이름, 0) → 열이 NULL값인 경우 0을 반환
※ COALESCE : 동사/ 합치다, 합체하다COALESCE (EXPRESSION 1, EXPRESSION 2, .... EXPRESSION N)
- ZEROIFNULL(열 이름) : 해당 열에 NULL 값이 포함되면 숫자 0 으로 바꾸는 함수
- NVL2(열 이름, 표현식1, 표현식2) : 해당 열이 NULL이면 ‘표현식2’ 값을 나타내고, NULL이 아니면 ‘표현식1’의 값을 나타낸다
- ※ DBMS마다 지원 여부의 차이가 있지만 NULL값을 처리할 수 있는 함수는 다음과 같다.
- ※ NULL을 사용할 때는 연산자 ‘=’를 사용할 수 없다.
'💻 SQL > 🔎기초 SQL' 카테고리의 다른 글
[칼퇴족 김대리는 알고 나만 모르는 SQL 기초편] DAY 6. 텍스트 마이닝을 활용한 데이터 조건주기 (0) | 2022.01.30 |
---|---|
[칼퇴족 김대리는 알고 나만 모르는 SQL 기초편] DAY 5. 논리 연산자를 활용한 데이터 조건주기 (0) | 2022.01.30 |
[칼퇴족 김대리는 알고 나만 모르는 SQL 기초편] DAY 3. SELECT문에 추가적으로 필요한 키워드 (0) | 2022.01.27 |
[칼퇴족 김대리는 알고 나만 모르는 SQL 기초편] DAY 2. SQL의 기초 (0) | 2022.01.27 |
[칼퇴족 김대리는 알고 나만 모르는 SQL 기초편] DAY 1. SQL 개요 (0) | 2022.01.27 |