hackerrank 8

[해커랭크] SQL certification 취득 후기

지금까지 거의 모든 사이트의 sql 문제를 풀어보았습니다.sql을 연습할 수 있는 다른 방법이 없을까 찾다가 해커랭크의 certification을 취득해보기로 했어요오늘은 3개의 certification을 취득한 후기를 올려보려고 합니다. Basic가장 낮은 단계인 basic입니다.제한 시간 : 30분 / 2문제서브쿼리 및 조건문을 사용해야하는 가벼운 문제약 10분 소요 Intermediate중간 단계 intermediate입니다.제한 시간 : 35분 / 2문제첫 번째 문제는 basic과 비슷한 난이도두 번째 문제는 테이블이 많이 나와서 어려웠어요. 테이블 간 관계를 정리하며 푸시면 좋을 것 같습니다.제한 시간 안에 문제를 다 풀지 못해서 자동으로 제출되었어요. 그런데도 합격이 뜬 걸 보면 제출만 하면 ..

Data/SQL 2024.02.01

[해커랭크] SQL(hard) - 15 Days of Learning SQL 문제 풀이

MS SQL Server를 사용합니다. 테이블 간 관계와 문제가 요구하는 output은 이미지와 같습니다. 유의사항 mysql의 경우, with 구문을 사용할 수 없습니다 : 해커랭크에서는 8.0 이하 버전을 지원합니다. 각 날짜에 최소 1번 이상 submission한 해커란, 기준일자까지 매일매일 submission한 해커를 말합니다. description만 보고서는 이 부분을 제대로 이해하기 어려웠습니다. 이것 때문에 시간을 많이 잡아먹었네요 인라인 뷰 생성(with) with cte as ( select s.hacker_id, h.name, s.submission_date, count(*) as submissions from submissions s left join hackers h on s.ha..

Data/SQL 2024.01.16

[해커랭크] SQL(hard) - Interviews 문제 풀이

MS SQL Server를 사용합니다. 테이블 간 관계와 문제가 요구하는 output은 이미지와 같습니다. 유의사항 mysql의 경우, with 구문을 사용할 수 없습니다 : 해커랭크에서는 8.0 이하 버전을 지원합니다. discussion에서 많이 언급된 질문 컬럼 순서를 맞춰야 정답으로 인정됩니다 : contest_id, hacker_id, name, and the sums of total_submissions, total_accepted_submissions, total_views, and total_unique_views 합계 컬럼 순서에 주의할 것 group by - sum을 두 번 사용할 것 : 인라인 뷰와 메인쿼리에서 모두 사용해야 합니다. 이유는 하단에 기재해두었습니다! discussion..

Data/SQL 2024.01.09

SQL 코딩테스트 웹사이트별 후기(프로그래머스/solvesql/hackerrank/leetcode)

오늘은 SQL 연습 사이트별 후기를 남겨보려고 합니다. 평가 기준은 난이도, 문제 개수, 문제 퀄리티, 기타 부가기능으로 구성되어 있습니다. 프로그래머스 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr가장 먼저 접한 사이트입니다. 한국 사이트이기 때문에 문제가 한국어로 출제되고, 모든 문제가 무료입니다.난이도 ★★☆☆☆ 소개한 사이트 중 가장 난이도가 쉽습니다. sql을 처음 공부하시는 분들께는 적합한 것 같아요문제 개수 : 약 70문제문제 퀄리티 : ★★★★☆기타 부가기능 : [질문하기] 기능으로 다른 유저와 소통 가능 SolveSQL https://solv..

Data/SQL 2023.11.05

해커랭크 SQL 문제 풀이 - Medium ③

해커랭크 마지막 문제풀이 포스팅입니다! 왜 Medium이 마지막이냐면 Hard는 아직 이해를 못 했거든요.. 그래서 일단 문제풀이 포스팅은 여기서 마무리하려고 합니다. 오늘은 medium 6문제를 풀어볼 예정입니다. MySQL 기준이고, 전체 풀이를 보려면 더보기를 클릭하시면 됩니다. - Challenges 각 학생의 hacker id, 이름, challenge 개수를 출력하는 문제입니다. 언뜻보면 쉬운 문제 같은데, 한 조건이 조금 까다로웠어요 : 두 명 이상의 학생의 challenge 개수가 동일하고 challenge 개수가 학생별 challenge 개수의 최댓값보다 작은 경우 해당 학생은 출력하지 않습니다. 더보기 해커 id별 challenge 개수를 나타내는 view를 먼저 만들고, 두 번째 vi..

Data/SQL 2023.05.22

해커랭크 SQL 문제풀이 - Medium ②

해커랭크 세번째 문제풀이 포스팅이네요. 오늘도 medium 난이도 5문제 풀어볼 예정이고, 더보기를 클릭하시면 각 문제의 풀이를 보실 수 있습니다. MySQL 기준입니다. - Weather Observation Station 19 유클리디안 거리를 구하는 문제입니다. 유클리디안 거리 공식은 다음과 같습니다. $$ distance = \sqrt{(q_1 - p_1)^2 + (q_2 - p_2)^2} $$ 더보기 경도 및 위도가 최대/최소인 곳의 좌표를 이용해야하므로 min, max를 사용해 최대/최소값을 구합니다. pow는 제곱을 계산하기 위함 함수입니다. 이후 sqrt를 통해 제곱근을 구하시고 문제에서 제시한대로 반올림해주시면 됩니다. select round(sqrt(pow(min(s.lat_n) - m..

Data/SQL 2023.05.17

해커랭크 SQL 문제풀이 - Medium ①

해커랭크 sql medium 문제를 풀어봤습니다. 프로그래머스, solvesql에 비하면 medium부터는 난이도가 꽤 올라가는 것 같네요. 더보기를 클릭하시면 각 문제의 풀이를 보실 수 있고, Mysql 기준입니다. - The pads 총 두 가지 쿼리를 작성하는 문제입니다. 1. 명단에 포함된 사람들의 이름과 직업을 '이름(직업 첫글자)' 형태로 나타내고, 이를 알파벳순으로 정렬합니다. 2. 같은 직업을 가진 사람이 몇 명이나 되는지 출력하는 쿼리를 작성합니다. 더보기 첫 번째 쿼리 : concat을 사용해 문자열을 이어 붙입니다. 직업 첫 글자를 나타내기 위해 left 함수를 사용합니다. select concat(name, "(", left(occupation,1), ")") from OCCUPAT..

Data/SQL 2023.05.15

해커랭크 SQL 문제풀이 - Easy

해커랭크 sql easy 문제 중에서 나름(?) 어려웠던 문제만 풀어봤습니다. 풀고 보니 max score가 20점 이상인 문제들이네요. Mysql 기준입니다 - Type of Triangle 삼각형 여부 및 종류를 판단하는 쿼리를 작성하는 문제입니다. * 삼각형 여부 및 종류 Equilateral : 정삼각형. 삼각형 집합의 교집합 Isosceles : 이등변삼각형 Scalene : 삼각형. 삼각형 집합 전체 Not A Triangle : 두 변의 합이 나머지 변보다 길지 않은 경우. 삼각형 집합의 여집합 * case when 구문을 사용해서 조건 충족 여부를 판단하면 됩니다. 두 변의 합이 다른 변보다 길지 않은 경우, 세 변의 길이가 같은 경우, 두 변의 길이가 같은 경우에 대해 조건을 걸어줍니다...

Data/SQL 2023.05.14
반응형