본문 바로가기

IT/DB

SQL 데이터베이스 사용 횟수 별 사용자 수 구하는 쿼리 예시

728x90
반응형

 

 

 

 

데이터베이스에서 사용 횟수별 사용자 수를 구하는 SQL 쿼리는 아래 사용자의 활동 로그 기반 예시로 작성할 수 있습니다.

 


 

✅ 예제 테이블 (user_logs)

 

사용자의 활동(로그인, 조회, 결제 등)이 기록된 로그 테이블이 있다고 가정하겠습니다.

 

user_id action action_date
1 login 2024-03-01
1 purchase 2024-03-02
1 view_page 2024-03-02
2 login 2024-03-01
2 view_page 2024-03-03
3 login 2024-03-01
3 purchase 2024-03-04
3 view_page 2024-03-05
3 view_page 2024-03-05

 

✅ SQL 쿼리 (사용 횟수별 사용자 수 집계)

 

SELECT usage_count, COUNT(user_id) AS user_count
FROM (
    SELECT user_id, COUNT(*) AS usage_count
    FROM user_logs
    GROUP BY user_id
) AS user_usage
GROUP BY usage_count
ORDER BY usage_count;
 

✅ 결과 예시

usage_count user_count
1 1
2 1
4 1

 

📌 설명:

  • user_logs에서 각 사용자의 활동 횟수를 COUNT()로 계산
  • GROUP BY user_id로 개별 사용자의 사용 횟수(usage_count)를 구함
  • 최종적으로 같은 사용 횟수를 가진 사용자 수를 COUNT()

 

✅ 변형 쿼리 (특정 기간 내 사용 횟수별 사용자 수 구하기)

 

특정 기간(예: 2024년 3월)에 대한 사용 횟수별 사용자 수를 구하는 예시 쿼리는 아래 참고하세요!

SELECT usage_count, COUNT(user_id) AS user_count
FROM (
    SELECT user_id, COUNT(*) AS usage_count
    FROM user_logs
    WHERE action_date BETWEEN '2024-03-01' AND '2024-03-31'
    GROUP BY user_id
) AS user_usage
GROUP BY usage_count
ORDER BY usage_count;
 
 
 

이렇게 하면 "3월 한 달 동안 사용 횟수별 사용자 수"를 확인 가능합니다~

 

감사합니다.

300x250
반응형