본문 바로가기

마케터의sql7

[SQL] 자주 쓰는 날짜 함수 알아보자 (내가)자주 쓰는 날짜 계산식 주문 데이터를 가공하면서 가장 중요한 것 중 하나는 날짜이다. 어느 날에 주문이 일어났고, 주문과 주문 사이의 갭을 구한다거나, 특정 월의 주문만 구한다거나.. 날짜로 자르는 방법은 굉장히 다양하기 때문에 날짜 함수 또한 아주 다양하던데 나는 주로 3가지를 많이 썼던 것 같다. 1. Date_diff 날짜와 날짜 사이의 차이를 세주는 함수 date_diff('day', '2021-01-01', '2021-01-03) 라고 보았을 때, 2021-01-01 ~ 2021-01-03 사이의 갭을 세줘, 라는 뜻이다. 쓰는 순서는 date_diff('day', 작은날짜, 큰날짜)이다. 요거 자꾸 헷갈리니까 까먹지 말기. date_diff('day',date(before),date(m.. 2022. 1. 3.
[SQL] Case when ~ then ~ end 조건 표현식 쉽게 써보자 Case When 조건문 Case When은 자주 쓰면서도 쉽게 이해하지 못해서 친해지기 어려웠던 구문이다. 조건을 잘 넣은 것 같은데 맨날 오류가 나서 분노를 유발했던 친구이기 때문이다. 그래서 글로 쓰면서 정리해보려고 이렇게 기록을 남겨본다. 사용하면서 내가 알게 된 것은 다음과 같다. - 나는 주로 select 절에 사용한다. 다른 절에 사용이 가능한지는 모르겠다. - 해석하자면 Case when 이러이러한 조건일 때 then 얘를 출력해줘 else 나머지는 이렇게 출력해줘 end 정도이다. (Case When 조건값 then 결과값 else 다른 경우 결과값 end) - 다중 조건도 가능하고, 여러 값을 출력하는 것도 가능하다. 그래서 아래처럼 MECE하게 값을 구분해야 할 때 사용한다. *MEC.. 2022. 1. 3.
[SQL] Group by 쉽게 알아보자 GROUP BY에 대해 알아보자 그룹바이는 생김새와 같이 데이터를 그룹화해주는 구문이다. 어떤 데이터를 어떤 기준에 맞춰 묶어주고 싶을 때 사용하는 기능입니다. 사실 엄청 많이 써요. 기본적으로 데이터를 가공할 때는 묶어주는 일이 거의 필수적이기 때문에.. 그래서 실제로 쓰면서 알게된 내용을 몇 자 적어보자면 아래와 같습니다. - 그룹화해주기 때문에 자동으로 중복제거(Distinct 효과)가 된다. - 잘못 사용하면 Compiler failed 오류가 난다.(그럴 땐 group by 를 빼주면 정상 동작한다) - 사용 예제는 간단하게 아래와 같다. where 절 아래에 사용한다. - 그룹화할 수 없는(= 중복제거할 수 없는) 형태의 쿼리에서는 동작하지 않는다. select 가져올 컬럼명 from 기준 테.. 2022. 1. 3.