문제:FOOD_PRODUCT 테이블에서 가격이 제일 비싼 식품의 식품 ID, 식품 이름, 식품 코드, 식품분류, 식품 가격을 조회하는 SQL문을 작성해주세요.
링크텍스트
풀이:
SELECT product_id,
product_name,
product_cd,
category,
price
FROM food_product
WHERE price=(SELECT MAX(price)
FROM food_product)
[SELECT문에서 사용]
집계함수(COUNT, MAX, MIN, SUM, AVG)는 SELECT 문에서 사용한다.
DISTINCT는 SELECT 문에서 사용한다.
CASE WHEN 은 SELECT문에서 사용한다.
[WHERE/CASE WHEN과 같은 조건문에서 사용]
[SQL의 작동순서 및 작성순서]
💡작동순서
FROM-ON-JOIN-WHERE-GROUP BY-HAVING-SELECT-DISTINCT-ORDER BY
테이블을 확인한 후, 조인 조건을 확인하고, 조인 후 추출 조건을 확인
그 뒤로 데이터 그룹화, 추출, 중복제거 후 마지막으로 데이터를 정렬
JOIN - 혹시 여러 테이블에서 확인하세요?
GROUP BY한 결과를 가지고 필터링하고 싶을 때 HAVING
💡작성순서
SELECT-FROM-WHERE-GROUP BY-HAVING-ORDER BY