Join
-
[SQL 프로그래머스 JOIN] 상품을 구매한 회원 비율 구하기 (ORCALE, MYSQL)<프로그래머스 고득점 SQL Kit> 2023. 5. 17. 15:59
USER_INFO 테이블과 ONLINE_SALE 테이블에서 2021년에 가입한 전체 회원들 중 상품을 구매한 회원수와 상품을 구매한 회원의 비율(=2021년에 가입한 회원 중 상품을 구매한 회원수 / 2021년에 가입한 전체 회원 수)을 년, 월 별로 출력하는 SQL문을 작성해주세요. 상품을 구매한 회원의 비율은 소수점 두번째자리에서 반올림하고, 전체 결과는 년을 기준으로 오름차순 정렬해주시고 년이 같다면 월을 기준으로 오름차순 정렬해주세요. --mysql SELECT YEAR(SALES_DATE) as YEAR, MONTH(SALES_DATE) as MONTH, COUNT(DISTINCT(I.USER_ID)) as PUCHASED_USERS, ROUND(COUNT(DISTINCT(I.USER_ID)) ..
-
[SQL 프로그래머스 JOIN] 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기 (ORCALE, MYSQL)<프로그래머스 고득점 SQL Kit> 2023. 5. 17. 15:54
CAR_RENTAL_COMPANY_CAR 테이블과 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블과 CAR_RENTAL_COMPANY_DISCOUNT_PLAN 테이블에서 자동차 종류가 '세단' 또는 'SUV' 인 자동차 중 2022년 11월 1일부터 2022년 11월 30일까지 대여 가능하고 30일간의 대여 금액이 50만원 이상 200만원 미만인 자동차에 대해서 자동차 ID, 자동차 종류, 대여 금액(컬럼명: FEE) 리스트를 출력하는 SQL문을 작성해주세요. 결과는 대여 금액을 기준으로 내림차순 정렬하고, 대여 금액이 같은 경우 자동차 종류를 기준으로 오름차순 정렬, 자동차 종류까지 같은 경우 자동차 ID를 기준으로 내림차순 정렬해주세요. --MYSQL SELECT C.CAR_ID,..
-
join<프로그래머스 고득점 SQL Kit> 2023. 3. 28. 17:49
inner join, outer join, left join, right join nested loop join : 이중(or 중첩) for문 Nested loop join은 두 개의 테이블(크기가 작은 테이블 : outer table, 크기가 큰 테이블 : inner table) 중 하나를 기준으로 선택하고, 다른 테이블의 모든 행을 하나씩 가져와서 기준 테이블의 각 행과 비교합니다. 이렇게 비교하여 일치하는 결과가 나오면, 이를 결과 테이블에 추가합니다. 이 방법은 간단하지만, 대용량 데이터 집합을 처리할 때는 성능 문제가 발생할 수 있습니다. 예를 들어, 기준 테이블이 매우 크고 다른 테이블도 큰 경우, 모든 조인 작업을 수행하는 데 많은 시간이 소요될 수 있습니다. Table A: ID Name ..