- Today
1. 프로젝트 발표 및 회고
2. SQL Basic 1회차 특강 수강
- Today I Learned
SQL
몇 주 내내 파이썬만 주구장창 했더니 SQL 이 낯설어지기 시작해서
SQL 베이직 녹화수업을 수강해보았다.
기초 복습을 할 것이라는 내 생각과는 다르게 window 함수를 사용하는 것을 보고 놀랐다..
간단하게 정리를 해보자
SELECT 그룹, SUM(값) FROM 테이블 GROUP BY 그룹
# window 함수 기본 구조
집계 함수(칼럼) OVER([PARTITION BY 컬럼] [ORDER BY 컬럼])
SUM(값) OVER (PARTITION BY 그룹)
group by 할 컬럼을 partition by 뒤에 적어주면 됨!
순서를 정렬하고 싶다면
SUM(salary) over(partition by department order by salary desc) as cumulative_salary
이런식으로 뒤에 작성해주면 된다.
window 함수는 모든 컬럼을 그대로 두고 결과를 보여준다.
> 행의 수가 그대로 유지된다.
참고: https://schatz37.tistory.com/12
순위를 매기는 함수는 다음과 같다.
ROW_NUMBER()
동 순위 무시하고 순위 매기기(순번을 지정하지 않는다면 데이터 원본 순서로 정렬)
1234567
RANK
동순위 발생 시 건너뜀
1224557
DENSE_RANK
동순위 발생 시 건너뛰지 않음
122345567
* 성훈튜터님 멘토링
데이터베이스에서 컬럼명 등을 사용할 때에는 모음을 뺀 약어를 사용한다.
name > nm
data > dt
department > dpt
rank > rnk
SQL Basic 1 회차 과제
# 직원의 급여를 기준으로 순위를 매기고, 동일한 급여를 가진 직원들이 있을 경우, 같은 순위를 부여하되 다음 순위는 건너뛰도록 하세요.
select name,
salary,
rank() over(order by salary desc) as "rank"
from employees;
# 각 부서(department)별로 급여(salary)의 누적 합계를 계산하세요.
select department,
name,
salary,
SUM(salary) over(partition by department order by salary desc) as cumulative_salary
from employees;
# 각 부서(department) 내에서 가장 높은 급여와 가장 낮은 급여의 차이를 계산하세요.
select department,
max(highest_salary) as highest_salary,
max(lowest_salary) as lowest_salary,
max(highest_salary) - max(lowest_salary) as salary_difference
from (
select department,
first_value (salary) over(partition by department order by salary desc) as highest_salary,
last_value(salary) over (partition by department order by salary asc) as lowest_salary
from employees
) a
group by department;
프로젝트
피드백
https://lyj-01.tistory.com/154
* 정기영 튜터님 멘토링
데이터에 대해 깊게 이해하려고 하기 위해 EDA 를 굉장히 열심히 진행하였고,
컬럼 하나하나마다 결측치와 이상치 처리를 하는 것도 좋았다.
분석에 대한 전문성과 시각화 자료도 잘 진행하였다.
다만 시각화 그래프의 경우 사이드적인 부분이기 때문에
시각화가 담고 있는 메시지를 ppt 에 같이 첨부해주면 좋았을 것이다.
저연령층일 수록 대출마감지연건수가 높거나 하는 등 당연한 정보들이 많아
회사입장에서는 새로운 느낌을 주지는 않아보인다.
이 데이터에서 인사이트를 찾아내는 것이 어려웠겠으나
조금더 과감함 목표를 세워 검증 및 인사이트를 뽑는 방향으로 진행하면 좋았을 것이다.
- Next
1. 새로운 팀 인사
2. 통계학 기초
'TIL' 카테고리의 다른 글
2024-05-28 (0) | 2024.05.28 |
---|---|
2024-05-27 (0) | 2024.05.27 |
2024-05-23 (0) | 2024.05.23 |
2024-05-22 (0) | 2024.05.22 |
2024-05-21 (0) | 2024.05.21 |