SQL 문제풀이(2)

냐옹·2023년 9월 30일
0

SQL

목록 보기
2/18

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

SELECT 
floor( price / 10000) * 10000 as PRICE_GROUP,
count(*) as PRODUCTS
FROM
product
GROUP BY
price_group
ORDER BY
price_group asc;

문풀

floor : 소수점 버림

product 테이블을 사용할게 -> 뽑아내는 조건은 따로 없고 -> price_group으로 묶자 -> 그러면 price_group과 관련한 값을 추출하겠고만.. floor(....) 10000원대 별로 나누었다. --> 그리고 나서 추출해야지! 추출하고 price group으로 칭하고, 그것을 세서 컬럼 추가!

  • 근데 이상한게 있을 수 있다. alias가 나중인데 어떻게 group by 할 수 있음?
  • 원래 안되는데 MYSQL에서는 된다고 한다.

일단 SQL의 실행순서

FROM: 어떤 테이블을 사용할지 결정합니다.
WHERE: 조건에 맞는 행을 필터링합니다.
GROUP BY: 주어진 컬럼이나 수식에 따라 행을 그룹화합니다.
SELECT: 지정된 컬럼이나 수식, 집계 함수를 계산합니다.
HAVING: 그룹화된 결과를 필터링합니다.
ORDER BY: 결과를 정렬합니다.

0개의 댓글