일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 최종 프로젝트
- pandas
- SQLD
- jd
- 기초통계
- streamlit
- 기초프로젝트
- GA4
- 데이터분석
- Chat GPT
- 머신러닝
- 시각화
- da
- cross join
- 데이터 분석
- 클러스터링
- data analyst
- SQL
- If
- Python
- 크롤링
- 서브쿼리
- 군집화
- 전처리
- 프롬프트 엔지니어링
- 팀프로젝트
- 프로젝트
- 태블로
- lambda
- 히트맵
Archives
- Today
- Total
세조목
SQL 정리(is와 null, 서브쿼리, char_length)(23.12.20) 본문
1. is와 =
where절을 작성하다보면 is 또는 = 을 사용하게되는 경우가 있다.
그런데 언제 is를 사용하고 언제 = 을 사용하는걸까??
답은 간단하다.
is 또는 = 뒤에 null이 나온다면 is를 사용하고,
그렇지 않은 경우에는 모두 = 을 사용하면 된다.
그런데 null 앞에는 왜 is를 써야할까??
NULL은 공백과는 다른 값으로 아직 값이 정해지지 않은 미지의 값 즉 Unknown 값이기 때문이다.
논리 연산 시 Unknown = Unknown 은 FALSE 조건이 되므로,
'= NULL' 이라고 쓰면 FALSE조건이 된다.
그래서 특수한 값인 NULL을 비교하기 위해서는 is NULL 또는 is not NULL 로 비교해야만 TRUE 조건이 가능하다.
예시는 아래와 같다.
select *
from academy
where math is null
select *
from academy
where math =
(
select student_number
from academy
where student_number = 75
)
2. 서브쿼리
쿼리를 작성하다보면 종종 서브쿼리를 사용하게 된다.
ex)
select *
from
(
select *
from house
) a
이 서브쿼리는 언제 사용하는걸까??
현 쿼리의 조건에서 가져올 수 없는 값을 사용하고싶을때 서브쿼리를 사용한다.
서브쿼리를 만들어놓으면 서브쿼리에서 내가 원하는 조건을 지정해서 그 값을 가져오면 되기 때문이다.
'데이터 분석 공부 > SQL' 카테고리의 다른 글
SQL 정리(STR_TO_DATE, SQL 실행 순서, 데이터 삭제)(23.12.29) (1) | 2023.12.30 |
---|---|
SQL 정리(Join - cross, left)(leetcode - 1280. Students and Examinations)(23.12.28) (1) | 2023.12.27 |
SQL 정리(Cross Join)(23.12.26) (0) | 2023.12.26 |
SQL 정리(self join)(23.12.22) (1) | 2023.12.22 |
SQL 예제 정리(23.12.18) (0) | 2023.12.18 |