[코드카타] SQL 69 The Blunder

Data_Student·2024년 12월 16일
0

코드카타

목록 보기
79/82

[코드카타] SQL 69 The Blunder

69 The Blunder
https://www.hackerrank.com/challenges/the-blunder/problem?isFullScreen=true

Samantha was tasked with calculating the average monthly salaries 
for all employees in the EMPLOYEES table, but did not realize her 
keyboard's  key was broken until after completing the calculation. 
She wants your help finding the difference between her miscalculation 
(using salaries with any zeros removed), and the actual average salary.
Write a query calculating the amount of error 
(i.e.:  average monthly salaries), and round it up to the next integer.
select round(avg(salary),0)-round(avg(replace(salary, 0,'')),0)
from EMPLOYEES
시간이 조금 소요 되었던 문제
이유 : trim()을 활용하여 문제를 해결하려고 하였기 때문
문제점 : trim()을 사용할 경우 값의 양 끝에 포함되어 있는 대상 문자만 제거하고, 안에 있는 대상문제를 제거 못함
대안 : replace() 함수를 사용
이유 : replace()는 대상 문자를 모두 변경해주기 때문에 원하는 값으로 추출 가능
결론 : 기본적인 함수들에 대해서는 숙지해서 필요한 상황에 맞게 활용해야 한다.

0개의 댓글