반응형

groupby 6

MySQL 프로그래머스 즐겨찾기가 가장 많은 식당 정보 출력하기 문제 답

이 글은 프로그래머스 SQL 고득점 Kit 문제와 답을 정리한 글입니다. *MySQL 버전입니다. 프로그래머스 즐겨찾기가 가장 많은 식당 정보 출력하기 문제 💡음식 종류, 음식 종류ID, 식당명, 즐겨찾기 수 출력하기 음식 종류별 즐겨찾기 수 가장 많은 식당 정보 출력 음식 종류 기준 내림차순 정렬 프로그래머스 즐겨찾기가 가장 많은 식당 정보 출력하기 답 💡 문제 포인트: 음식 종류별 즐겨찾기 수 가장 많은 식당 필터링 with a as( select max(favorites) as m from rest_info group by food_type ) select b.FOOD_TYPE , b.REST_ID , b.REST_NAME , b.FAVORITES from rest_info as b, a where..

MySQL 프로그래머스 재구매가 일어난 상품과 회원 리스트 구하기 문제 답

이 글은 프로그래머스 SQL 고득점 Kit 문제와 답을 정리한 글입니다. *MySQL 버전입니다. 프로그래머스 재구매가 일어난 상품과 회원 리스트 구하기 문제 💡 회원 ID, 상품 ID 출력하기 동일 회원이 동일 상품을 재구매한 경우만 출력 회원 ID 오름차순, 상품 ID 내림차순 정렬 프로그래머스 재구매가 일어난 상품과 회원 리스트 구하기 답 💡 문제 포인트: 동일 상품을 재구매한 동일 회원 출력 select USER_ID , PRODUCT_ID from ONLINE_SALE group by USER_ID, PRODUCT_ID having count(USER_ID) >= 2 and count(PRODUCT_ID) >= 2 order by USER_ID, PRODUCT_ID desc; 1. 유저별 구매 ..

HackerRank(해커랭크) MySQL Occupations 문제 답

*MySQL 버전, advanced select 문제입니다. 해커랭크 Occupations 문제, 샘플, 설명 직업별(D, P, S, A) 컬럼 분류 직업별 컬럼에 해당되는 사람 이름 알파벳 순 정렬 컬럼에 더 이상 사람 이름이 없다면 NULL 처리 대충 첫 번째 컬럼은 의사들, 두 번째 컬럼은 교수들, 세 번째 컬럼은 가수들, 네 번째 컬럼은 배우들 이름이어야 하고 빈 셀은 NULL 처리하라는 말. 해커랭크 Occupations 답 WITH 가독성을 위해 사용 CASE WHEN 직업별로 이름을 가져오고자 사용(WHERE occupation = 'doctor'처럼 쓴 것임) ROW_NUMBER, PARTITION BY NULL처리 때문에 엄청 까다롭다고 생각한 문제다. 그저 단순하게 CASE WHEN이나..

HackerRank(해커랭크) MySQL Average Population of Each Continent 문제 답

*MySQL 버전, Basic Join 문제입니다. 해커랭크 Average Population of Each Contient 문제 국가 테이블에서 대륙 이름 가져오기 각 도시별 평균 인구수 구하기 이때, 평균값은 정수로 내림 반환. 공통키: CITY.countrycode = COUNTRY.code 중복 컬럼명들이 있으므로 테이블 구분 유의. 해커랭크 Average Population of Each Continent 답 FLOOR: 숫자를 가장 큰 정수로 내림한다. SELECT country.continent , FLOOR(AVG(city.population)) FROM country, city WHERE city.countrycode = country.code; GROUP BY 1; 추가 정리 GROUP..

MySQL 프로그래머스 SQL 고득점 Kit 고양이와 개는 몇 마리 있을까 문제 답

프로그래머스 SQL 고득점 Kit '고양이와 개는 몇 마리 있을까' 문제, 답을 공유합니다. *이 글은 MySQL 버전입니다. 고양이와 개는 몇 마리 있을까 문제 설명 문제 설명의 특별한 점은 없어 보입니다. 고양이와 개는 몇 마리 있을까 문제 문제 의도: GROUP BY 사용. 동물 중 고양이와 개의 수만 조회. 개보다 고양이가 먼저 오도록 정렬 필요. 고양이와 개는 몇 마리 있을까 답 여러 개(cat, dog)를 선택하기 위해 IN 사용. 동물 별 수를 카운트해야 하므로, GROUP BY animal_type 사용. 고양이 Cat, 강아지 Dog이므로 오름차순 ASC 사용했으나 생략함. 문제 예시에 따라, COUNT(animal_type)을 count로 별칭 사용. SELECT animal_type,..

MySQL 집계 함수, GROUP BY와 HAVING 사용 방법

이 글은 MySQL에서 자주 쓰는 집계 함수 종류 정리, 집계 함수와 쓰이는 GROUP BY 그리고 조건절 HAVING 설명, 사용 방법, 예시를 담았습니다. MySQL 집계 함수(Aggregate Functions) MySQL에서 집계 함수는 평균, 최대, 최소, 합... 등 NULL 값을 제외하고 계산하는 함수입니다. 또한 SELECT문과 함께 사용합니다. 자주 쓰는 집계 함수 종류 COUNT(): 특정 컬럼 행의 개수, BIGINT 타입, 숫자 데이터 외에도 사용 가능 SELECT COUNT(컬럼명) FROM 테이블명; *COUNT 관련 글 MySQL COUNT 함수 특정 값 개수 찾기 MIN(): 특정 컬럼 행의 최소 값(숫자 데이터에만 사용 가능) SELECT MIN(컬럼명) FROM 테이블명;..

SQL/MySQL 2023.09.11
반응형
top