SQL

Data Analysis/SQL

[MySQL] POW 함수 사용법 및 예제

사용법 POW(a, b) = a^b 예제 SELECT POW(2, 4) >> 2^4 = 16 SELECT POW(2, 3) >> 2^3 = 8

Data Analysis/TIL

[solvesql] 배송 예정일 예측 성공과 실패_CASE WHEN THEN END

문제 2017년 1월 한 달 동안 발생한 주문의 배송 예측이 정확했는지 분석을 하려고 합니다. 고객의 구매 일자별로 배송 예정 시각 안에 고객에게 도착한 주문과, 배송 예정 시각이 지나서 고객에게 도착한 주문을 각각 집계하는 쿼리를 작성해주세요. 배송 완료 또는 배송 예정 시각 데이터가 없는 경우는 계산에서 제외합니다. 계산 결과는 구매 날짜를 기준으로 오름차순 정렬되어야 한다. 문제 요약 - 예정 배송 시각 안(예정 배송일>배송 도착일) 에 도착한 주문과 예정 배송 시각을 초과한 주문(예정 배송일

Data Analysis/TIL

[solvesql] 점검이 필요한 자전거 찾기, 첫 주문과 마지막 주문_STRFTIME

문제 1 2021년 1월 한 달간 총 주행 거리가 50km 이상인 자전거의 ID를 출력하는 쿼리를 작성 문제 2 첫 주문과 마지막 주문 일자 풀이 1 SELECT bike_id FROM rental_history WHERE STRFTIME('%Y%m%d', rent_at) BETWEEN '20210101' AND '20210131' AND DISTANCE >= 50000; 풀이 2 SELECT MIN(STRFTIME('%Y-%m-%d', order_purchase_timestamp)) AS first_order_date, MAX(STRFTIME('%Y-%m-%d', order_purchase_timestamp)) AS last_order_date FROM olist_orders_dataset; 배운 점 ..

Data Analysis/TIL

[solvesql] 멘토링 짝꿍 리스트_SUBQUERY

문제 멘티가 될 신규 입사자들은 ‘2021년 12월 31일’을 기준으로 3개월 이내 입사한 인원 전체이며, 멘토는 ‘2021년 12월 31일’을 기준으로 재직한지 2년 이상이 된 직원들만 배정하려고 합니다. 또한 최대한 다양한 분야의 직원들이 서로 교류 할 수 있도록 서로 다른 부서에 속하는 직원끼리 멘토링을 진행하려고 합니다. 위 조건을 모두 만족하는 멘티-멘토 짝꿍 리스트를 계산하는 쿼리를 작성해주세요. 쿼리 결과에는 매칭 가능한 멘토가 없는 경우도 모두 포함되어야 합니다. 추가로 쿼리 결과는 멘티 ID를 기준으로 오름차순 정렬되어 있어야 하고, 멘티 1명에 대해 배정 가능한 멘토가 여러 명인 경우 멘토 ID로 오름차순 정렬되어 있어야 합니다. 문제 요약 입사한지 3개월 안된 신입과 입사한지 2년 이..

Data Analysis/SQL

[MySQL] WINDOW 함수(feat. 순위 함수, 분석 함수)

WINDOW 함수 : 행과 행간을 비교, 연산, 정의하기 위한 함수 WINDOW FUNCTION 기본 문법 SELECT WINDOW_FUNCTION(arguments) OVER ( [PARTITION BY 칼럼] [ORDER BY 칼럼] [WINDOWING 절] ) FROM 테이블명; WINDOW FUNCTION 종류 구분 함수 비교 순위 함수 RANK, DENSE_RANK, ROW_NUMBER 일반 집계 함수 SUM, MAX, MIN, AVG, COUNT SQL서버에서는 OVER절 내 ORDER BY 지원X 그룹 내 행 순서 함수 FIRST_VALUE, LAST_VALUE, LAG, LEAD SQL서버에서는 지원X 그룹 내 비율 함수 RATIO_TO_REPROT, PERCENT_RANK, CUME_DI..

Data Analysis/SQL

[MySQL] WITH 구문

매출 탑 5 국가를 추출하는 쿼리를 작성해보자 TABLE 생성해서 풀기 1. 국가 매출액 등수 매기기 SELECT COUNTRY , SALES , DENSE_RANK() OVER(ORDER BY SALES DESC) RNK -- 매출액 기준으로 내림차순 한 뒤 등수 매기겠다 FROM CLASSICMODELS.STAT; 2. 테이블 생성 CREATE TABLE CLASSICMOEDELS.STAT_RNK AS SELECT COUNTRY , SALES , DENSE_RANK() OVER(ORDER BY SALED DESC) RNK FROM CLASSICMODELS.STAT; 3. 상위 5개 국가 SELECT * FROM CLASSICMODELS.STAT_RNK WHERE RNK BETWEEN 1 AND 5; ..

Data Analysis/TIL

앞 글자 or 뒷 글자가 모음이 아닌 경우, 소수점 N째 자리, 제곱

앞 글자 or 뒷 글자가 모음이 아닌 경우 문제 문제요약 station 테이블에서 city 이름의 앞글자 또는 뒷글자가 모음이 아닌 경우를 추출하라! 풀이 SELECT DISTINCT city FROM station WHERE city REGEXP '^[^aeiou]' OR city REGEXP '[^aeiou]$' 배운 점 [^] : NOT ^[ ] : 앞 [ ]$ : 뒤 소수점 N째 자리에서.. 잘라라 TRUNCATE(칼럼, N) 반올림 하라 ROUND(칼럼, N) 제곱 ex) 밑의 식을 SQL로 작성하라 SQRT(POWER((q1-p1), 2) + POWER((q2-p2), 2))

Data Analysis/TIL

[solvesql] 몇 분이서 오셨어요?_%, MOD

문제 테이블 당 일행 수 size가 홀수 인 주문의 모든 컬럼 추출하라 풀이 SELECT * FROM tips WHERE size % 2 = 1; SELECT * FROM tips WHERE MOD(size, 2) = 1; 배운 점 몫 = / 나머지 = %, MOD 실수를 나눌 때 몫(정수)만 반환하기 = FLOOR( 10.1 / 3) = 3

Data Analysis/TIL

[solvesql] 두 테이블 결합하기_GROUP BY

문제 역대 올림픽 정보 데이터셋은 역대 올림픽 경기와 관련된 데이터가 들어있는 테이블로 이루어져 있습니다. athletes 테이블에는 역대 올림픽 참가 선수의 이름이 들어 있습니다. events 테이블에는 종목과 경기 이름이 들어 있습니다. games 테이블에는 올림픽 개최 연도, 개최 도시와 시즌 정보가 기록되어 있습니다. records 테이블에는 역대 올림픽 참가 선수들의 신체 정보와 획득한 메달 정보가 기록되어 있습니다. 이 테이블은 다른 테이블과 매핑할 수 있는 ID 정보도 가지고 있습니다. teams 테이블에는 국가 정보가 기록되어 있습니다. 위 테이블 중 events 테이블과 records 테이블을 활용해 올림픽 골프 종목에 참가한 선수의 ID를 모두 조회하는 쿼리를 작성해주세요. 문제 요약 ..

Data Analysis/TIL

[HackerRank] New Companies_여러 테이블 외부 조인, 그룹 별로 오름차순으로 보여주기

문제 Amber's conglomerate corporation just acquired some new companies. Each of the companies follows this hierarchy: Given the table schemas below, write a query to print the company_code, founder name, total number of lead managers, total number of senior managers, total number of managers, and total number of employees. Order your output by ascending company_code. Note: The tables may contain d..

J pathfinder
'SQL' 태그의 글 목록