데브허브 | DEVHUB | Analyze Search Performance - SQL Technical Interview QuestionAnalyze Search Performance - SQL Technical Interview Question
- SQL 검색 성능 분석 문제는
search_logs 테이블을 활용하여 각 검색어(search_term)의 품질(quality)과 저품질 비율(low_quality_percentage)을 계산하는 것이 목표입니다. 📊
- 테이블은
search_term, search_result, result_rank (1-1000), score (1-5) 네 가지 컬럼으로 구성되며, score가 3 미만인 경우 저품질 검색으로 간주됩니다. 📉
- 검색 품질(
search_quality)은 (score / result_rank) 비율의 평균으로 정의되며, 정확한 계산을 위해 score를 NUMERIC 타입으로 형변환하는 것이 중요합니다. ➗
- 저품질 비율(
low_quality_percentage)은 score가 3 미만인 검색의 비율을 의미하며, CASE WHEN 문을 사용하여 조건에 따라 1 또는 0을 반환한 후 평균을 내어 계산합니다. 💯
- 최종 결과는
ROUND 함수를 사용하여 품질과 저품질 비율 모두 소수점 둘째 자리까지 반올림하여 출력해야 합니다. 🔢
- 각 검색어별로 집계된 결과를 얻기 위해
GROUP BY search_term 절을 사용해야 합니다. 🧑💻
- 이 문제는
CAST, AVG, CASE WHEN, ROUND, GROUP BY와 같은 SQL 키워드들의 숙련된 활용 능력을 평가합니다. ✨