일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 문풀
- 코딩테스트
- 약수구하기
- SQL고득점KIT
- 활성사용자수
- SQL테스트
- 리트코드sql
- 셀프조인
- leetcodesql50
- sql문풀
- leetcode
- 프로그래머스
- with절
- With
- leetcode문풀
- UNION
- 파이썬
- 위키독스
- 데이터리안
- mysql
- 파이썬문풀
- 데이터분석
- 윈도우함수
- 프로그래머스문풀
- levle1
- 코테
- SQL
- GROUPBY
- 서브쿼리
- join
- Today
- Total
목록SQL (36)
꿈은 데이터분석가, 취미는 계획
출처: [프로그래머스 스쿨 - 코딩테스트 연습 - MY SQL 문제] : 상품을 구매한 회원 비율 구하링크: https://school.programmers.co.kr/learn/courses/30/lessons/131534문제(일부): 가입일자가 있는 USER_INFO테이블과 판매정보가 있는 ONLINE_SALE 테이블에서 21년도에 가입한 회원 중 구매이력이 있는 회원 수, 비율(구매한 회원 수 / 가입자 수)WITH절과 서브쿼리를 활용한 풀이0) 답안출처: https://school.programmers.co.kr/questions/754891) 2021년도 가입자만 있는 USER_INFO 임시테이블 생성2) 메인쿼리에서는 FROM절에 ONLINE_SALE테이블을 사용3) WHERE절에서 임시테..
출처: [프로그래머스 스쿨 - 코딩테스트 연습 - MY SQL 문제] : 그룹별 조건에 맞는 식당 목록 출력하기링크: https://school.programmers.co.kr/learn/courses/30/lessons/131124문제(일부): 고객정보 테이블과 고객리뷰테이블에서 주문이 가장 많은 회원의 리뷰정보 불러오기윈도우 함수 PERCENT_RANK활용하기0) 최대리뷰 수가 같은 회원이 있을 것이라고 예상 => 조회 시 최대리뷰 작성자가 3명 출력1) 작성자별 리뷰 수 count를 위한 with절 생성 필터링을 위해 DENSE_RANK 윈도우함수를 사용하여 리뷰수가 많은 순으로 등급부여 * 순위가 동일할 경우 같은 순위 부여 ex) 3,3,3,2,2,1 => 1등,1등,1..
출처: [프로그래머스 스쿨 - 코딩테스트 연습 - MY SQL 문제] : 연간 평가점수에 해당하는 평가 등급 및 성과금 조회하기 링크: https://school.programmers.co.kr/learn/courses/30/lessons/284528 문제(일부): 평가등급과 성과금, 평가자 정보 조회 평가등급은 상,하반기 평균점수, 성과금 비율은 평가등급에 따라 부여됨 1. WITH절 사용 1) 상, 하반기 평균점수를 구하는 WITH절 생성 2) CASE WHEN 구문으로 1)의 평균 점수에 따라 평가등급과 성과금 비율 부여 3) 2)의 with절과 평가자 테이블을 JOIN하여 정보조회 WITH AVG_SCORE AS( SELECT EMP_NO, AVG(SCORE) AS AVG_SCORE FROM HR..
출처: [프로그래머스 스쿨 - 코딩테스트 연습 - MY SQL 문제] : 언어별 개발자 분류하기 링크: https://school.programmers.co.kr/learn/courses/30/lessons/276036 문제(일부): 2개의 테이블 정보를 활용하여 보유한 스킬별로 등급부여 0.BIT_OR 집계함수 이해하기 여러 사용자의 권한을 그룹별로 합쳐서 최대 권한을 계산할 수 있음 부서 ID가 10인 경우, 권한 1, 2, 4가 있는데, 이를 OR 연산하면 1 | 2 | 4 = 7이 됩니다. 즉, 읽기, 쓰기, 실행 권한 모두 있습니다. 부서 ID가 20인 경우, 권한 3과 6을 OR 연산하면 3 | 6 = 7이 되므로 같은 권한을 가지게 됩니다. CREATE TABLE UserPermissions..
출처: [프로그래머스 스쿨 - 코딩테스트 연습 - MY SQL 문제] : 조건에 맞는 사원정보 조회하기 링크: https://school.programmers.co.kr/learn/courses/30/lessons/284527 문제(일부): 2022년 상/하반기 평가 점수의 합이 가장 높은 사원을 출력 1. GROUP BY 활용하기 1)필요한 정보를 조회하기 위해 2개 테이블 JOIN 2) 상/하반기 점수를 합하기 위해 직원ID(HE.EMP_NO)로 GROUP BY 하여 SUM(HG.SCORE) 3) LIMIT 1으로 가장 높은 점수 직원 확인 SELECT SUM(HG.SCORE) AS SCORE, HE.EMP_NO, HE.EMP_NAME, HE.POSITION, HE.EMAIL FROM HR_EMPLO..
출처: [프로그래머스 스쿨 - 코딩테스트 연습 - MY SQL 문제] : 입양 시각 구하기(2) 링크: https://school.programmers.co.kr/learn/courses/30/lessons/59413 문제(일부): 0시부터 23시까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회 0. 재귀쿼리 활용하기 0~23시까지 입양이 발생하지 않은 경우 0으로 count해야 함 1) 재귀쿼리를 활용해서 0~23을 만들기 2) right join으로 발생횟수 count *재귀쿼리 with절에 첫번째 select문은 1회만 실행,초기값with절의 두번째 select문은 where조건을 만족할 때까지 반복 => 0~23까지의 열 생성 with recursive time as ( select 0 as..