본문 바로가기

데이터베이스35

[MYSQL] 그룹별 조건에 맞는 식당 목록 출력하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 링크를 클릭하면 해당 문제로 이동합니다. 분명, 이 쿼리가 맞는데 왜 실행이 안될까?.. 한 2시간 가량 잡고 있었던 문제였다. 접근 방법이 아예 틀렸으면 화도 안나는데, 겨우 단어? 하나 때문에 시간을 저만큼 끌었다는게 킹받음... 1. 접근하기 첫 번째로, GROUP BY절에서 MEMBER_ID로 묶어버리고 COUNT(REVIEW_ID)를 사용해서 리뷰를 제일 많이 작성한 사람이 누구인지 알아보자. # 리뷰를 가장 많이 작성한 MEMBER_ID SELECT MEMBER_ID FROM REST_REVIEW .. 2023. 1. 8.
[MYSQL] 우유와 요거트가 담긴 장바구니 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 링크를 클릭하면 해당 문제로 이동합니다. 1. 접근하기 문제를 보자마자 SELF JOIN을 이용해서 풀어봐야겠다 라는 생각이 들었다. 우유가 든 장바구니 테이블과 요거트가 든 장바구니 테이블을 JOIN해서 둘의 CART_ID는 같다 라는 조건을 주면 되겠다. 2. 풀이 SELECT DISTINCT A.CART_ID FROM CART_PRODUCTS A, ( SELECT CART_ID FROM CART_PRODUCTS WHERE NAME = 'Yogurt') B WHERE A.CART_ID = B.CART_ID.. 2023. 1. 8.
[MYSQL] 오랜 기간 보호한 동물(2) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 링크를 클릭하면 해당 문제로 이동합니다. 1. 접근하기 문제에서 필요한 데이터는 보호 기간인데 보호 기간은 입양일과 보호시작일 간의 차이를 구해주면 되겠다고 생각했다. 보호 기간을 기준으로 내림차순 정렬하고 LIMIT 2 를 사용하면 되겠다. MYSQL에서 두 날짜간의 차이를 구하려면 DATEDIFF(날짜1, 날짜2)를 사용하면 된다. 2. 풀이 SELECT I.ANIMAL_ID, I.NAME FROM ANIMAL_INS I, ANIMAL_OUTS O WHERE I.ANIMAL_ID = O.ANIMAL_ID .. 2023. 1. 8.
[MYSQL] 가격대 별 상품 개수 구하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 링크를 클릭하면 해당 문제로 이동합니다. 위 문제의 난이도는 2레벨인데 처음에 접했을 때는 4레벨쯤으로 보였다. 시간을 좀 많이 소요한 문제인데 막상 또 풀고나니 그렇게 어려웠던 문제는 아닌거 같다는 생각도 들었다. 1. 접근하기 처음에는 CASE WHEN 구문을 이용해서 쿼리를 작성해보았다. SELECT CASE WHEN PRICE BETWEEN 0 AND 10000 THEN '0' WHEN PRICE BETWEEN 10000 AND 20000 THEN '10000' WHEN PRICE BETWEEN 200.. 2023. 1. 7.
[MYSQL] 식품분류별 가장 비싼 식품의 정보 조회하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 링크를 클릭하면 해당 문제로 이동합니다. 1. 접근하기 문제에서 식품분류별로~ 라고 명시되어 있으니까 GROUP BY절에 식품분류(CATEGORY)를 넣으면 되겠다고 생각했다. 그 후에, 가격이 제일 비싼~ 구문을 보고 WHERE절에 서브쿼리를 사용해서 제일 비싼 PRICE를 식품분류별로 뽑아내면 되겠다고 생각했다. 그리고, CATEGORY IN ('과자', '국', '김치', '식용유') 까지...! 2. 풀이 SELECT CATEGORY, PRICE, PRODUCT_NAME FROM FOOD_PRODUCT.. 2023. 1. 7.