포스트

년, 월, 성별 별 상품 구매 회원 수 구하기

https://school.programmers.co.kr/learn/courses/30/lessons/131532

문제 문제

  • 문제 풀이
1
2
3
4
5
6
7
SELECT EXTRACT(YEAR FROM O.SALES_DATE) AS "YEAR", EXTRACT(MONTH FROM O.SALES_DATE) "MONTH", U.GENDER, COUNT(DISTINCT O.USER_ID) AS "USERS"
FROM USER_INFO U
JOIN ONLINE_SALE O
ON U.USER_ID = O.USER_ID
WHERE U.GENDER IS NOT NULL
GROUP BY EXTRACT(YEAR FROM O.SALES_DATE), EXTRACT(MONTH FROM O.SALES_DATE), U.GENDER
ORDER BY YEAR, MONTH, U.GENDER;


  • COUNT는 SQL에서 사용되는 집계 함수 중 하나이다. 이 함수는 특정 칼럼이나 표현식의 레코드 수를 계산하는 데 사용된다.
    • COUNT(*)는 해당 테이블의 전체 레코드 수를 세는 것이고, COUNT(특정 칼럼명)은 특정 칼럼의 NULL이 아닌 값의 레코드 수를 세는 것이다.
    • 예를 들어, 특정 테이블의 “GENDER”라는 칼럼이 있고 일부 레코드의 “GENDER”가 NULL인 경우:
      • COUNT(*)은 테이블의 전체 레코드 수를 세게 된다.

        1
        2
        
          SELECT COUNT(*)
          FROM your_table;
        

        실행 결과

      • COUNT(GENDER)는 “GENDER” 칼럼이 NULL이 아닌 레코드 수를 세게 된다.

        1
        2
        
          SELECT COUNT(your_column)
          FROM your_table;
        

        실행 결과


  • 오답 실행 결과 실행 결과


  • 실행 결과

실행 결과

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.