본문 바로가기

SQL

(4)
SQL - Window Function, 날짜 포맷 SQL 5주차5강. 업무 시작을 단축시켜 주는 마법의 문법(Window Function - Rank, Sum)Window Function은 행을 단위별로 묶어서 연산을 쉽게 만들어준다. 실습예제1) 음식 타입별로 주문 건수가 가장 많은 상점 3개씩 조회하기 1. 음식 타입별, 음식점별 주문 건수 집계하기 2. Rank 함수 적용하기 3. 3위까지 조회하고, 음식 타입별, 순위별로 정렬하기SELECT cuisine_type, restaurant_name, cnt_order, rank() over (partition by cuisine_type order by cnt_order desc) rankingfrom(select cuisine_type, restaurant_name, ..
SQL - 값의 제외, 값의 변경, Pivot Table SQL 5주차 강의내용 정리  2강. 조회한 데이터에 아무 값이 없다면 어떻게 해야할까1. 없는 값이나 잘못된 값을 제외해주는 방법select restaurant_name, avg(rating) avg_rating, avg(if(rating'Not given'),rating,null)from food_ordersif 문을 사용해서 특정조건일때와 아닐때를 구분하고, 제외할 땐 null 을 사용한다. null 을 사용할 때는, Not given 일때도 0 이라고 간주하고 계산한다. 그러면 총 계산해야할 데이터 수가  달라지기 때문에, 평균값이라고 해도 결과가 다를 수 있다. 예를들어 총 데이터가 6개 중에 2개가 Not given 이면 2개의 0 을 포함하고 6개를 나누는데,  null..
SQL - JOIN 실습예제 6강. [실습] JOIN 으로 두 테이블의 데이터 조회하기실습예제1) 한국 음식의 주문별 결제 수단과 수수료율을 조회하기      (조회 컬럼 : 주문 번호, 식당 이름, 주문 가격, 결제 수단, 수수료율) *결제 정보가 없는 경우도 포함하여 조회 1. 결제 정보가 없는 경우도 포함하여 조회 이 내용은, 두개의 테이블 중 한 쪽 테이블에서 없는 내용이 있을수 있다라는 의미이기 때문에 left join 을 사용한다.select f.order_id, f.restaurant_name, f.price, p.pay_type, p.vatfrom food_orders f left join payments p on f.order_id=p.order_idwhere cui..
SQL - Subquery & JOIN SQL 4주차4강. 복잡한 연산을 Subquery 로 수행하기실습 예제1 음식 타입별 지역별 총 주문수량과 음식점 수를 연산하고, 주문수량과 음식점수 별  수수료율을 산정하기 (음식점수 5개 이상, 주문수 30개 이상 → 수수료 0.5%  음식점수 5개 이상, 주문수 30개 미만 → 수수료 0.8%  음식점수 5개 미만, 주문수 30개 이상 → 수수료 1%  음식점수 5개 미만, 주문수 30개 미만 → 수수료 2%) 1. sum, count, distinct 을 기본적으로 사용하여 조건에 맞는 내용을 작성한다select cuisine_type,sum(quantity) total_quantity,count(distinct restaurant_name) count_resfrom food_ordersgroup..