SQL

SQL/프로그래머스 MySQL with code

프로그래머스 MySQL : [lv.3] 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 매우 다양한 풀이 대여중이 하나라도 있는 차량은 대여중을 출력해야합니다. 이 부분을 해결하기가 어려웠는데요, 정말 다양한 해결방법이 있었습니다. 좋은 풀이들부터 소개하겠습니다. group by, max/min, if, in, case 를 잘 활용하면 쿼리문이 확 압축됩니다. IN절 서브쿼리, DISTINCT, BETWEEN, GROUP BY 없음 SELECT DISTINCT CAR_ID, IF(CAR_ID IN (SELECT DISTINCT CAR_ID FROM CAR_RENTAL_COMPANY_RENTAL_..

SQL/프로그래머스 MySQL with code

프로그래머스 MySQL : [lv.4] 년, 월, 성별 별 상품 구매 회원 수 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr DISTINCT, JOIN, GROUP BY YEAR, MONTH, GENDER 3개의 필드들로 GROUP BY 를 수행해야 합니다. 유저 수를 세는 부분에서는 DISTINCT 로 같은 유저는 한번만 카운팅할 수 있도록 합니다. JOIN 은 기본적인 inner join 으로 처리해주면 됩니다. 쿼리문 SELECT YEAR(sales_date) AS YEAR, MONTH(sales_date) AS MONTH, A.gender AS GENDER, COUNT(DISTINCT A.user_id) AS USERS ..

SQL/프로그래머스 MySQL with code

프로그래머스 MySQL : [lv.4] 서울에 위치한 식당 목록 출력하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ROUND, AVG, JOIN, LIKE, GROUP BY 주소에 '%서울%' 라고 하면 틀리는군요. 서울시가 아닌 서울 지명이 있는걸까요? 쿼리문 SELECT A.REST_ID, A.REST_NAME, A.FOOD_TYPE, A.FAVORITES, A.ADDRESS, ROUND(AVG(B.REVIEW_SCORE),2) as SCORE FROM rest_info A JOIN rest_review B ON A.rest_id = B.rest_id WHERE A.address LIKE '서울%' GROUP BY ..

SQL/프로그래머스 MySQL with code

프로그래머스 MySQL : [lv.2] 조건에 부합하는 중고거래 상태 조회하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr DATE LIKE date 컬럼도 like 로 조회할 수 있다. 단, 저장 형식에 맞춰서 조회해야한다. 들여쓰기와 줄바꿈을 적절히 사용하면 더 가독성이 좋은 쿼리를 작성할 수 있다. 쿼리문 SELECT board_id, writer_id, title, price, CASE WHEN status='SALE' THEN '판매중' WHEN status='RESERVED' THEN '예약중' ELSE '거래완료' END AS status FROM used_goods_board # WHERE YEAR(created_d..

SQL/프로그래머스 MySQL with code

프로그래머스 MySQL : [lv.3] 조건에 맞는 사용자 정보 조회하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr CONCAT 으로 str 필드들 합치기 3개의 주소 필드를 스페이스바를 사이에 껴서 합쳐서 출력하도록 합니다. SUBSTRING 과 CONCAT 으로 전화번호 사이에 하이픈 넣기 3,4,4로 전화번호를 끊어서 사이에 하이픈을 넣고 출력합니다. 쿼리문 SELECT B.user_id, B.nickname, CONCAT(B.city,' ',B.street_address1,' ',B.street_address2) AS address, CONCAT(SUBSTRING(B.tlno,1,3),'-',SUBSTRING(B...

SQL/프로그래머스 MySQL with code

프로그래머스 MySQL : [lv.2] 재구매가 일어난 상품과 회원 리스트 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2개의 필드로 GROUP BY 실행, HAVING 절로 GROUP BY 후 조건 주기 두개의 필드를 기준 필드로 group by 를 진행하고, having 절로 2번 이상 나오는 레코드들에 대해 출력합니다. 마지막에 정렬을 진행합니다. 쿼리문 SELECT user_id, product_id FROM online_sale GROUP BY user_id, product_id HAVING COUNT(*) >= 2 ORDER BY user_id, product_id DESC

jamong5
'SQL' 카테고리의 글 목록 (2 Page)