19,800원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
set 3의 3번 문제- 데이터의 개수가 짝수일 때 질문
set 3의 3번 문제에서, 데이터의 개수가 짝수일 때 다음 쿼리문을 알려주셨는데요.SELECT ROUND(AVG(LAT_N), 4) FROM ( SELECT ROW_NUMBER() OVER (ORDER BY LAT_N) - 1 AS row_num , COUNT(*) OVER () - 1 AS row_total , LAT_N FROM Station ) t WHERE row_num IN (FLOOR(row_total / 2), CEIL(row_total / 2))이때, 왜 ROW_NUMBER()와 COUNT(*) 에서 각각 1을 빼는건가요? 각각 1을 빼지 않아도 정답이 잘 출력되는데, 혹시 이 문제에서는 드러나지 않는 예외상황이 있는걸까요?
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
set 1 - 2번 문제풀이
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.having total_score !=0 이라고 group by 결과값을 필터링해주셨는데실행 순서상 서브쿼리 ->메인쿼리(from/join -> (where) -> groupby -> having ->select -> orderby -> limit)이지 않나요?그런데 select 에 있는 total_score를 having에서 쓸 수 있는 이유가 궁금합니다.
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
세트2번 Binary Tree Nodes 질문입니다!
강사님과 동일한 코드로 작성했는데 왜 저는 error가 날까여 ㅜㅜㅜ
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
고급문제풀이set1 3번 문제
해당문제 쿼리에 대해 manager 철자를 수정시 작동한다고 피드백을 주셨는데 작동이 되지 않아서 어디가 오류가 있는지 여쭤보고자 질문드립니다 SELECT C.company_code,C.founder,COUNT DISTINCT(L.lead_manager_code),COUNT DISTINCT(S.senior_manager_code),COUNT DISTINCT(M.manager_code),COUNT DISTINCT(E.employee_code)FROM Company CINNER JOIN Lead Manager L ON C.company_code = L.company_codeINNER JOIN Senior Manager S ON S.company_code = L.company_codeINNER JOIN Manager M ON M.company_code = S.company_codeINNER JOIN Employee E ON E.company_code = M.company_codeGROUP BY C.Company_code, C.founderORDER BY C.company_code 추가로, inner join을 하는 부분이 1과 2중 어떤 부분이 왜 맞는지도 헷갈려서 설명을 부탁드리겠습니다 감사합니다 INNER JOIN Lead_Manager l ON c.company_code = l.company_codeINNER JOIN Senior_Manager s ON c.company_code = s.company_codeINNER JOIN Manager m ON c.company_code = m.company_codeINNER JOIN Employee e ON c.company_code = e.company_code INNER JOIN Lead Manager L ON C.company_code = L.company_codeINNER JOIN Senior Manager S ON S.company_code = L.company_codeINNER JOIN Manager M ON M.company_code = S.company_codeINNER JOIN Employee E ON E.company_code = M.company_code
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
고급문제풀이 3번 INNERJOIN 활용시 오류
SELECT C.company_code, C.founder, COUNT DISTINCT(L.lead_manager_code), COUNT DISTINCT(S.senior_manager_code), COUNT DISTINCT(M.manager_code), COUNT DISTINCT(E.employee_code) FROM Company C INNER JOIN Lead Manager L ON C.company_code = L.company_code INNER JOIN Senior Manager S ON S.company_code = L.company_code INNER JOIN Manger M ON M.company_code = S.company_code INNER JOIN Employee E ON E.company_code = M.company_codeGROUP BY C.Company_code, C.founderORDER BY C.company_code 다음과 같이 작성하였는데 어떤 부분에서 오류가 발생하였는지 한번 확인해주시면 감사드리겠습니다. 모든 조건을 맞게 기입하였다고 생각되는데 계속 오류가 반복해서 뜨네요 ㅜㅜ
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
고급문제풀이세트1 문제2번 질문
SELECT h.hacker_id , h.name , SUM(sb.max_score) total_scoreFROM( SELECT hacker_id, challenge_id, MAX(score) max_score FROM Submissions GROUP BY hacker_id, challenge_id) sbINNER JOIN hackers h ON h.hacker_id = sb.hacker_idGROUP BY h.hacker_id, h.name HAVING total_score !=0ORDER BY total_score DESC, h.hacker_id 위와 같은 코드를 작성하여서 정답을 잘 제출하였는데요다만, 서브쿼리부문에서 challenge_id가 왜 select절과 group by절에 와야하는지 이해가 되지 않습니다.좀 더 상세히 말씀드리면, 어짜피 group by절에 오게되면 select 절에 오게되는데, challenge_id는 저희가 구하려는 값에도 없는데 왜 group by 절을 써서 서브쿼리에서 묶어야 되는지가 이해가 안됩니다 감사합니다
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
회사일하다 보니까 다 못듣고 수강기간이 다끝나가는데 .,. 수강기간 연장은 어떻게 할수 있나요?ㅜㅜ
회사일하다 보니까 다 못듣고 수강기간이 다끝나가는데 .,. 수강기간 연장은 어떻게 할수 있나요?ㅜㅜ
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
[Weather 20 ] 2번째 쿼리도 따라 했는데 왜 다 실패일까요?
SELECT ROUND(AVG(LAT_N), 4) FROM ( SELECT LAT_N , PERCENT_RANK() OVER(ORDER BY LAT_N) rank FROM station ) sub WHERE rank = 0.5틀렸데요.왤까요?....................................................................
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
[Weather 20] 따라 했는데 왜 작동 안해요?
SELECT ROUND(AVG(LAT_N), 4) FROM (SELECT ROW_NUMBER() OVER(ORDER BY LAT_N) row_num , COUNT(*) OVER() n , LAT_N FROM station) sub WHERE CASE WHEN n % 2 = 1 THEN row_num = (n+1)/2 ELSE row_num IN (n/2, (n/2)+1) ENDMsg 102, Level 15, State 1, Server dbrank-tsql, Line 19 Incorrect syntax near '='. MOD 쓰면 MS SQL Server 에서는 작동 안된다고 하고윈도우 함수 쓰면 MYSQL에서는 작동 안된다고 하는데MS SQL Server에서 홀수 구하는 공식을 저렇게 했는데 = 쓰지 말라고 하고 in을 쓰면 in쓰지 말라고 하는데 도대체 어떻게 해야 풀 수 있는 건가요? P.S 새로 고침도 했습니다. 껐다 켰구요. 로그아웃도 하고 다시 실행 했습니다.
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
weather-20 왜 작동 안하는건가요?
SELECT ROUND(AVG(LAT_N), 4) FROM (SELECT LAT_N , ROW_NUMBER() OVER(ORDER BY LAT_N) rank FROM station) sub WHERE CASE WHEN MAX(rank) % 2 =0 THEN rank in ( MAX(rank) / 2, (MAX(rank) / 2) + 1)) ELSE rank = ROUND(MAX(rank) / 2) END ) Msg 156, Level 15, State 1, Server dbrank-tsql, Line 16 Incorrect syntax near the keyword 'in'.저런 메세지가 출력되는데 어떻게 수정해야 작동할까요? 그리고MS SQL Server 로 ROUND( something, 4) 를 했는데 "85.87180000" 이런 값을 주는 건가요?그냥 MYSQL로 하면 안 저래요.그러나 MYSQL로 하면 윈도우 함수 쓸 수 없어요.어떻게 하면 좋아요?
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
Ollivander's Inventory 윈도우 함수 min() over
SELECT id, age, min_coins, power FROM (SELECT W.id, WP.age, W.coins_needed, W.power , MIN(W.coins_needed) OVER(PARTITION BY age, power ORDER BY coins_needed) min_coins FROM Wands W INNER JOIN Wands_Property WP ON W.code = WP.code WHERE WP.is_evil = 0) sub ORDER BY power DESC, age DESC MIN() OVER(PARTITION BY) 로는 문제 못 푸나요??푸는 방법 알려줄 수있나요??중복된 power가 많이 나와요 ㅠㅠㅠ
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
LeetCode 626. Exchange Seats 리트코드 제출 오류
현재 LeetCode 626. Exchange Seats에 답안을 제출하면 틀린 것으로 나오고 있습니다.제가 한 풀이랑 강의 풀이 모두 제출해도 wrong으로 나오는 오류가 있네요. 다음에 수업 들으시는 분들이 당황하시지 않도록 따로 공지를 해주셔야 할 것 같습니다.
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
섹션4에 3번 문제풀이 질문
마지막 문제 리트코드 626문제 풀이를 할 때SELECT CASE WHEN MOD(id, 2) = 1 AND id = COUNT(*) OVER() THEN id WHEN MOD(id, 2) = 1 AND id != COUNT(*) OVER() THEN id+1 ELSE id-1 END id , studentFROM seatORDER BY id이렇게 프롬절에 서브쿼리를 안 만들고,셀렉트절 CASE WHEN THEN에 COUNT윈도우함수를 사용하면 왜 답이 안 나오는지 궁금합니다.
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
SQL Project Planning 풀이 관련 문의
SELECT start_dateFROM projectsWHERE start_date NOT IN(end_date)로 작성하면 엔드데이트가 제외 안 되고SELECT start_dateFROM projectsWHERE start_date NOT IN(SELECT end_date FROM projects)서브쿼리로 작성해야지만 엔드데이트가 제외되는지 궁금합니다.
- 해결됨[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
섹션 1번 4번문제 풀이
GROUP BY를 쓰기 위해서는SELECT절에 있어야 사용할 수 있는걸로 아는데섹션1의 4번문제 Occupations풀이를 보면SELECT절에서 rn을 지워도 런코드가 되는 이유가 궁금합니다.
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
섹션1 2번 문제풀이 강의
섹션 1의 2번 문제인Contest Leaderboard를 풀이할 때 1분 28초에 선생님께서 드레그하여 한 번에 띄어쓰기를 합니다.이 때 사용하는 단축키가 뭔지 궁금합니다.
- 해결됨[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
set2 - 1 같게 작성했는데 답이 이상합니다.
Set2 - 1번 문제 풀이를 보고 같게 작성 후 코드를 돌렸는데 답이 이상하게 나옵니다.SELECT city , length(city) lenFROM STATIONORDER BY len, cityLIMIT 1;SELECT city , length(city) lenFROM STATIONORDER BY len DESC, cityLIMIT 1이렇게 작성 후 돌리면 다음과 같이 나오네요왜 이럴까요...?submit code를 눌러도 오답이라고 뜹니다.
- 해결됨[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
max함수를 써서 풀지는 못하나요?
Select Case When mod(id,2) != 0 then id+1 When mod(id,2) = 0 then id-1 When id = max(id) then id-1 END as id , student From Seat Order by id 위와 같이 했는데 | id | student || -- | ------- || 2 | Abbot |라는 결과를 내놓네요.
- 해결됨[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
윈도우 함수를 이용해서 풀고 싶어서 써봤습니다. 더 간단하게 줄일 수 있을까요?
Select Distinct s.hackers, h.name, s.finalFrom (Select hackers, sum(maxscore) over (partition by hackers) as finalFrom( Select Distinct hacker_id as hackers, challenge_id, max(score) over (partition by hacker_id, challenge_id) as maxscoreFrom Submissions ) sub) sInner join Hackers h on h.hacker_id = s.hackersWhere s.final > 0Order by s.final desc
- 미해결[백문이불여일타] 데이터 분석을 위한 고급 SQL 문제풀이
(Hacker Rank)Binary Tree 문제 질문
Leaf는 자식이 없다는 것을 이용해서두 번째 조건으로 P의 값과 N이 같지 않을 때 'Leaf' 로 출력 되도록 아래와 같은 쿼리로 작성해 보았습니다. 근데 Leaf가 출력 되지 않는 오답이 나오는데, 이유가 뭘까요?위와 같은 조건으로 쿼리를 작성하려면 어떻게 작성해야 하는지도 궁금합니다!