[프로그래머스 SQL] Lv.2 - 노선별 평균 역 사이 거리 조회하기
·
SQL/GROUP BY
https://school.programmers.co.kr/learn/courses/30/lessons/284531 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이노선(ROUTE)을 기준으로 그룹핑한다.노선별 총 누계거리를 구한다. SUM 키워드로 총합을 구하고, ROUND 키워드로 반올림을 한 다음, CONCAT 키워드로 단위 'km'를 함께 조회한다.노선별 평균 역 사이 거리를 구한다. AVG 키워드로 평균을 구하고, ROUND 키워드로 반올림을 한 다음, CONCAT 키워드로 단위 'km'를 함께 조회한다.총 누계거리를 기준으로 내림차순 정렬한다.SELECT ROUTE, CO..
[프로그래머스 SQL] Lv.2 - 조건에 맞는 사원 정보 조회하기
·
SQL/GROUP BY
https://school.programmers.co.kr/learn/courses/30/lessons/284527 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이HR_DEPARTMENT, HR_EMPLOYEES, HR_GRADE 테이블을 조인한다.사번(EMP_NO)을 기준으로 그룹핑한다.SUM 키워드로 평가 점수의 합과 함께 사번, 성명, 직책, 이메일을 조회한다.평가 점수를 기준으로 내림차순 정렬한다.LIMIT 키워드로 상위 첫 번째 행만 조회한다.SELECT SUM(G.SCORE) AS SCORE, E.EMP_NO, E.EMP_NAME, E.POSITION, E..
[프로그래머스 SQL] Lv.2 - 가격대 별 상품 개수 구하기
·
SQL/GROUP BY
https://school.programmers.co.kr/learn/courses/30/lessons/131530 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이1만 원 미만대, 1만 원대, 2만 원대, 3만 원대... 이렇게 만원 단위로 구분하는 것이 중요하다.일단 가격을 1만으로 나눈 몫으로 몇만 원대인지 알 수 있다. 이때 소수점이 나올 경우 소수점 이하는 별 의미가 없으므로 FLOOR 키워드로 소수점을 버린다. 그리고 몫의 1만을 곱하면 각 구간의 최소금액으로 표시할 수 있다.이렇게 구한 각 구간의 최소금액으로 그룹핑한다.각 구간의 최소금액과 COUNT 키워드로 그룹핑된 행의 개수를 조..
[프로그래머스 SQL] Lv.2 - 입양 시각 구하기(1)
·
SQL/GROUP BY
https://school.programmers.co.kr/learn/courses/30/lessons/59412 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이입양일의 시각이 09시부터 19시까지 행을 필터링한다.입양일의 시각을 기준으로 그룹핑한다.HOUR와 COUNT 키워드로 각각 시간대와 그룹핑된 행의 수를 조회한다.시간대를 기준으로 오름차순 정렬한다.SELECT HOUR(DATETIME) AS HOUR, COUNT(*) AS COUNTFROM ANIMAL_OUTSWHERE HOUR(DATETIME) BETWEEN 9 AND 19GROUP BY 1ORDE..
[프로그래머스 SQL] Lv.2 - 동명 동물 수 찾기
·
SQL/GROUP BY
https://school.programmers.co.kr/learn/courses/30/lessons/59041 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이동물 이름을 기준으로 그룹핑한다.두 번 이상 쓰인 이름만 조회해야 하기 때문에 HAVING과 COUNT 키워드로 그룹핑했을 때 두 개 이상의 행이 그룹핑되는 이름만 필터링한다.이름과 COUNT 키워드로 쓰인 횟수를 조회한다.이름을 기준으로 오름차순 정렬한다.SELECT NAME, COUNT(NAME) AS COUNTFROM ANIMAL_INSGROUP BY NAME HAVING COUNT(NAME) >= 2O..
[프로그래머스 SQL] Lv.2 - 고양이와 개는 몇 마리 있을까
·
SQL/GROUP BY
https://school.programmers.co.kr/learn/courses/30/lessons/59040 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이ANIMAL_TYPE을 기준으로 그룹핑한다.ANIMAL_TYPE과 COUNT 키워드로 각각 그룹핑된 행의 개수를 조회한다.ANIMAL_TYPE을 기준으로 오름차순 정렬한다.SELECT ANIMAL_TYPE, COUNT(*) AS countFROM ANIMAL_INSGROUP BY ANIMAL_TYPEORDER BY 1
[프로그래머스 SQL] Lv.2 - 진료과별 총 예약 횟수 출력하기
·
SQL/GROUP BY
https://school.programmers.co.kr/learn/courses/30/lessons/132202 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이LIKE 또는 YEAR과 MONTH 키워드로 진료예약일시가 2022년 5월에 해당하는 행만 필터링한다.진료과 코드로 그룹핑한다.진료과 코드와 COUNT 키워드로 각 그룹핑된 행의 개수를 조회한다.진료과별 환자 수를 기준으로 오름차순 정렬, 진료과 코드를 기준으로 오름차순 정렬한다.SELECT MCDP_CD AS '진료과코드', COUNT(*) AS '5월예약건수'FROM APPOINTMENTWHERE APN..
[프로그래머스 SQL] Lv.2 - 성분으로 구분한 아이스크림 총 주문량
·
SQL/GROUP BY
https://school.programmers.co.kr/learn/courses/30/lessons/133026 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이FIRST_HALF 테이블과 ICECREAM_INFO 테이블을 조인한다.ICECREAM_INFO 테이블의 아이스크림 성분 타입으로 그룹핑한다.아이스크림 성분 타입과 SUM 키워드로 성분 타입별 아이스크림 총주문량을 조회한다.총주문량을 기준으로 오름차순 정렬한다.SELECT B.INGREDIENT_TYPE, SUM(TOTAL_ORDER) AS TOTAL_ORDERFROM FIRST_HALF A JOIN ..
[프로그래머스 SQL] Lv.2 - 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기
·
SQL/GROUP BY
https://school.programmers.co.kr/learn/courses/30/lessons/151137 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이LIKE 키워드와 OR을 사용해서 옵션에 "통풍시트", "열선시트", "가죽시트"가 포함된 행을 필터링한다.자동차 종류별로 그룹핑한다.자동차 종류와 COUNT 키워드로 종류별 행의 개수를 조회한다.자동차 종류를 기준으로 오름차순 정렬한다.SELECT CAR_TYPE, COUNT(*) AS CARSFROM CAR_RENTAL_COMPANY_CARWHERE OPTIONS LIKE '%통풍시트%' OR OPTION..
[프로그래머스 SQL] Lv.3 - 물고기 종류 별 대어 찾기
·
SQL/SUM, MAX, MIN
https://school.programmers.co.kr/learn/courses/30/lessons/293261 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이FISH_INFO 테이블과 FISH_NAME_INFO 테이블을 조인한다.WHERE 절에서 서브 쿼리로 FISH_INFO 테이블의 물고기 종류별 가장 큰 물고기를 조회한다. 그리고 IN 절로 서브 쿼리에서 조회한 물고기 종류와 종류별 가장 큰 물고기의 길이와 일치하는 행을 필터링한다.물고기 ID와 물고기 이름, 길이를 조회한다.물고기 ID를 기준으로 오름차순 정렬한다.SELECT A.ID, B.FISH_NAME, A.L..