Data Analyst KIM

[SQL이론] SQL 기본 문법 사용 시 주의사항 본문

데이터 분석/SQL

[SQL이론] SQL 기본 문법 사용 시 주의사항

김두연 2023. 5. 15. 21:32
반응형

SQL의 기본 문법 중 select,where,group by,having의 주의사항에 대해서 알아보자.

 

select절에서 가장 많이 하는 실수

컬럼명을 새로 명명할 경우 띄어쓰기,숫자로 시작하는 단어,특수문자가 포함될 수 없다.

사용 불가 사용 가능 => 큰따옴표("")를 사용하면 가능하다.
띄어쓰기(cate gory) ==> "category"
숫자로 시작하는 단어(2021_gmv) ==> "2021_gmv"
특수문자(#mm) ==> "#mm"

하지만 왠만하면 사용하지 않는 것이 좋다!!

 

where절  문법 총정리 및 주의사항

<문법정리>

긍정 부정 의미
= != , <> 일치/불일치 조건
> , >= , < , <=   대수 조건(보통 숫자와 많이 사용)
between ~ and ~ not between ~ and ~ 범위 조건(보통 숫자와 많이 사용)
in(~,~,~) not in(~,~,~) 다수의 값 일치/불일치 조건
like '%~%' not like '%~%' 특정문자열 포함/불포함 조건
ilike '%~%' not ilike '%~%' 위와 동일, 영어인 경우 알파벳 대소문자 구분 안함
is null is not null null값 포함/제외 조건

 

<주의사항>

- where절에 and와or을 함께 쓸때는, 반드시 ()로 의미 단위끼리 묶어야 한다.

 

group by절에서  가장 많이 하는 실수

- 집계함수를 제외하고는 모두 group by에 명시하자

즉, category와 yyyy가 있으므로 group by에는 1,2 모두를 작성해야한다.

 

추가로 집계함수 앞의 컬럼을 추가하거나 뺄 때 group by절도 같이 수정해주는 것을 잊지 말아라!!

집계함수제외 2개의 select인데 group by에 1만 입력해준 경우 오류
좋은 예시

 

having절 주의사항

where : 집계 전 데이터를 필터링

having : 집계 후 데이터를 필터링

 

where절에는 집계함수가 올 수 없고 having절에는 집계함수만 올 수 있다.

 

 

반응형