OkBublewrap

Average Post Hiatus (Part 1) 본문

개발/SQL

Average Post Hiatus (Part 1)

옥뽁뽁 2025. 3. 8. 11:43

Average Post Hiatus (Part 1)

문제

1. 2021년 포스팅한 사용자

2. 최소 두 번 포스팅

3. 첫 포스트와 마지막 포스트의 날짜 차이 계산

풀이

SELECT user_id,
  max(post_date)::date - min(post_date)::date as days_between
FROM posts
where EXTRACT(year from post_date) = '2021'
group by user_id
having count(user_id) >= 2

1️⃣ Where: 연도가 2021년도 - 조건1

2️⃣ group: user_id 기준으로 그룹 

3️⃣ having: 최소 두 번 포스팅 - 조건2 

4️⃣ 마지막 포스트(max) - 첫 포스트(min) 으로 날짜 차이 계산

- mysql은 datediff 써서 풀이 하면 됨

- postgres는 

 

::date를 뺄 때 출력 값은

"days":307, "hours":11 으로 나온다. INTERVAL 형식으로 반환

그래서 꼭 Date로 타입 설정을 해야 됨

 

 

'개발 > SQL' 카테고리의 다른 글

User's Third Transaction  (0) 2025.03.08
Teams Power Users  (0) 2025.03.08
Laptop vs. Mobile Viewership  (0) 2025.03.08
Unfinished Parts  (0) 2025.03.08
Page With No Likes  (0) 2025.03.08