프로그래머스 45

[MySQL] 프로그래머스 - 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기(IF, 날짜 비교)

https://school.programmers.co.kr/learn/courses/30/lessons/157340 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT CAR_ID, IF(SUM(IF('2022-10-16' BETWEEN START_DATE AND END_DATE, 1, 0)) > 0, '대여중', '대여 가능') AS AVAILABILITY FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY GROUP BY 1 ORDER BY 1 DESC 자동차ID중에 제시된 날짜에 대여중인 자동차가 하나라도 있다면 대여중이라고..

DB 2023.02.10

[MySQL] 프로그래머스 - 대여 횟수가 많은 자동차들의 월별 대여 횟수 구하기(BETWEEN, GROUP BY)

https://school.programmers.co.kr/learn/courses/30/lessons/151139 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT MONTH(START_DATE) AS MONTH, CAR_ID, COUNT(*) AS RECORDS FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE CAR_ID IN ( SELECT CAR_ID FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE START_DATE BETWEEN '2022-08-01' AND '2022-1..

DB 2023.02.10

[MySQL] 프로그래머스 - 그룹별 조건에 맞는 식당 목록 출력하기(WHERE문 서브쿼리)

https://school.programmers.co.kr/learn/courses/30/lessons/131124 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT MEMBER_NAME, REVIEW_TEXT, DATE_FORMAT(REVIEW_DATE, '%Y-%m-%d') AS REVIEW_DATE FROM MEMBER_PROFILE M JOIN REST_REVIEW R ON M.MEMBER_ID = R.MEMBER_ID WHERE M.MEMBER_ID = ( SELECT MEMBER_ID FROM REST_REVIEW GROUP BY ME..

DB 2023.02.09

[MySQL] 프로그래머스 - 주문량이 많은 아이스크림들 조회하기(JOIN)

https://school.programmers.co.kr/learn/courses/30/lessons/133027 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT F.FLAVOR FROM FIRST_HALF F JOIN JULY J ON F.FLAVOR = J.FLAVOR GROUP BY F.FLAVOR ORDER BY SUM(F.TOTAL_ORDER + J.TOTAL_ORDER) DESC LIMIT 3 처음에 ON절에 아이디가 같은걸로 조건을 걸었는데 틀렸다. 문제를 자세히 읽어보면 맛이 같은 아이스크림에 대해서도 다른 출하 번호를 가질 수..

DB 2023.02.09

[MySQL] 프로그래머스 - 5월 식품들의 총매출 조회하기(GROUP BY, JOIN)

https://school.programmers.co.kr/learn/courses/30/lessons/131117 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT A.PRODUCT_ID, A.PRODUCT_NAME, SUM(A.PRICE * B.AMOUNT) AS TOTAL_SALES FROM FOOD_PRODUCT A JOIN FOOD_ORDER B ON A.PRODUCT_ID = B.PRODUCT_ID WHERE PRODUCE_DATE LIKE '2022-05%' GROUP BY PRODUCT_ID ORDER BY TOTAL_SALES D..

DB 2023.02.09

[MySQL] 프로그래머스 - 없어진 기록 찾기(LEFT OUTER JOIN)

https://school.programmers.co.kr/learn/courses/30/lessons/59042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT OUTS.ANIMAL_ID, OUTS.NAME FROM ANIMAL_OUTS OUTS LEFT OUTER JOIN ANIMAL_INS INS ON OUTS.ANIMAL_ID = INS.ANIMAL_ID WHERE INS.ANIMAL_ID IS NULL ORDER BY ANIMAL_ID LEFT JOIN 은 두 테이블을 조인 할 때 왼쪽 테이블의 데이터인 ANIMAL_OUTS 의 데이터..

DB 2023.02.09

[MySQL] 프로그래머스 - 즐겨찾기가 가장 많은 식당 정보 출력하기(GROUP BY, IN)

https://school.programmers.co.kr/learn/courses/30/lessons/131123 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT FOOD_TYPE, REST_ID, REST_NAME, FAVORITES AS FAVORITES FROM REST_INFO WHERE (FOOD_TYPE, FAVORITES) IN (SELECT FOOD_TYPE, MAX(FAVORITES) FROM REST_INFO GROUP BY FOOD_TYPE) ORDER BY FOOD_TYPE DESC; IN절로 FOOD_TYPE 별로 즐겨..

DB 2023.02.08

[MySQL] 프로그래머스 - 조건별로 분류하여 주문상태 출력하기(날짜 조건)

https://school.programmers.co.kr/learn/courses/30/lessons/131113 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT ORDER_ID, PRODUCT_ID, DATE_FORMAT(OUT_DATE,'%Y-%m-%d') AS OUT_DATE, IF(OUT_DATE

DB 2023.02.08

[MySQL] 프로그래머스 - 루시와 엘라 찾기(IN)

https://school.programmers.co.kr/learn/courses/30/lessons/59046 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT ANIMAL_ID, NAME, SEX_UPON_INTAKE FROM ANIMAL_INS WHERE NAME IN ('Lucy', 'Ella', 'Pickle', 'Rogan', 'Sabrina', 'Mitty') ORDER BY ANIMAL_ID 여러 값을 OR 관계로 묶어 나열하는 조건을 WHERE 절에 사용할 때 쓸 수 있다. 괄호 내 값들 중 하나라도 일치하면 조건에 맞는 것이다.

ALGORITHM 2023.02.08

[MySQL] 프로그래머스 - 카테고리 별 상품 개수 구하기(LEFT)

https://school.programmers.co.kr/learn/courses/30/lessons/131529 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT LEFT(PRODUCT_CODE,2)AS CATEGORY, COUNT(*) AS PRODUCTS FROM PRODUCT GROUP BY CATEGORY ORDER BY CATEGORY LEFT함수로 문자열을 원하는 길이만큼 자른다. 참고 https://redcow77.tistory.com/264 [Mysql] 문자열 자르기 함수 - SUBSTRING(),LEFT(),RIGHT() M..

DB 2023.02.08