QCC | 7회차 코드 리뷰 & 피드백 (+마지막 qcc)
·
SQL
☑️  좋아요를 받지않은 페이지 조회[문제][문제 풀이]내 코드 SELECT DISTINCT p.page_id AS page_idFROM pages p LEFT JOIN page_likes pl ON p.page_id =pl.page_idWHERE pl.page_id IS NULLORDER BY 1; 이슈 및 해결 과정left join 후 null 값 집계 하는 문제page_id 만 출력하는 부분에서, group by 쓸지 distinct 쓸지 고민하다가 한줄 추가하기 싫어서 distinct로 해결실무에서 사용한다면 group by 가 더 적합할듯한줄 포인트pass ☑️  티커별 최고가/최저가와 해당날짜 조회하기[문제][문제 풀이]내 코드 -- 1. high /low 의 open 과 일짜 각각cte로 ..
코테준비 | Active User Retention /mau 조회하기(postgreSQL)
·
SQL
☑️ Active User Retention[문제]2022년 7월 mau(월간 활성 사용자수 ) 조회하기 7월 월간 사용자는 전월에도 활성 유저 여야함 [문제 풀이]내 코드 SELECT EXTRACT('MONTH' FROM event_date) AS month ,COUNT(DISTINCT user_id) AS monthly_active_usersFROM user_actionsWHERE event_type IN ('sign-in', 'like', 'comment')AND TO_CHAR(event_date,'YYYY-MM') ='2022-07'AND user_id IN (SELECT DISTINCT user_id FROM user_actions ..
코테 준비 | 폐쇄할 따릉이 정류소 찾기 2 (union all)
·
SQL
☑️  폐쇄할 따릉이 정류소 찾기 2[문제]solvesql 문제들은 보안 문제로 포인트만 기재특정월 한달동안 정류소에서 발생한 대여/반납 건수가 전년동월 대비 50% 이하인 정류소 확인 후 폐쇄 검토 예정정류소 id, 정류소명,정류소 지역,전년비 (100%) 조건 : 전년비는 소수점둘째까지 출력 , 당월,전년 동월 각각 이용횟수가 0인 경우는 제외 [문제 풀이]내 코드 - 1차 오답WITH r1 AS (SELECT rent_station_id AS id ,DATE_FORMAT(rent_at,'%Y-%m') AS dt ,COUNT(DISTINCT rent_at) as cnt --오류 발생 (자전거별 대여시각이 동일한 경우도 있음) FROM rental_historyWHERE DATE_FO..
코테준비 | Second Highest Salary (의도적으로 null 값 출력하기)
·
SQL
☑️  176. Second Highest Salary[문제]Write a solution to find the second highest distinct salary from the Employee table. If there is no second highest salary, return null (return None in Pandas).두번째로 높은 연봉자 조회하기, 없다면 null 로 반환[문제 풀이]내 코드 - window & with 문WITH dnkt AS (SELECT * ,DENSE_RANK() OVER (ORDER BY salary DESC) as dnk ,count(id) OVER () AS total_cntsFROM employee), nullt AS (SELEC..
QCC | 3회차 코드 리뷰 & 피드백
·
SQL
☑️  문제1:  첫 주문 고객 연도별 매출 조회 [문제] “2011년 12월”에 첫 주문을 한 고객들의 연도별 매출을 조회하는 SQL 문을 작성하세요. 고객 이름은 이름과 성을 결합하여 생성합니다. 결과는 고객 ID(customerid)기준 오름차순, 연도(year) 기준 오름차순으로 정렬합니다.[문제 풀이]내 코드 SELECT so.customerid ,concat(c.firstname," ",c.lastname) AS customer_name ,year(so.orderdate) AS 'year' ,round(sum(so.orderqty*so.unitprice),2) AS gmvFROM sales_order so INNER JOIN customer c ON so.customerid = c..
코테 준비 | Restaurant Growth(이동 평균, 누적 합 구하기 - 윈도우함수/연관 서브쿼리/ N 행 이후부터 끝까지 출력하기)
·
SQL
☑️  1321. Restaurant Growth[문제]Compute the moving average of how much the customer paid in a seven days window (i.e., current day + 6 days before). average_amount should be rounded to two decimal places.The result format is in tReturn the result table ordered by visited_on in ascending order.레스토랑 테이블에서 일주일(6일전-현재) 까지 누적합 및 이동평균 구하기 (+7일 이후부터 출력)[문제 풀이]내 코드 - 윈도우 함수WITH daily_sales AS (-- 일별 매출집계..