The Blunder(hackerrank)

minllny·2024년 3월 6일


아.. 왜.. 나는 ㅠㅠ (일단 칭얼)

일단 답 쿼리입니다

SELECT CEIL(AVG(SALARY) - AVG(REPLACE(SALARY, 0, '')))
FROM EMPLOYEES

저는 정수형에서 0만 쏙 뺄 수 있다는 걸 몰랐죠 왜 아무도 말 안해줬나요?
예를들어 8809 -> 889 이런 식입니다.
REPLACE함수가 정수형에서도 적용될 줄은 꿈에도 몰랐습니다 ㅎㅎ
(처음에 숫자형을 문자형으로 바꾸고 0 빼주고 숫자형으로 바꿔줬었음.)


그리고 반올림 관련 함수들도 헷갈려서 간단히 정리하였습니다.


ROUND: 반올림

지정한 소숫점 자리로 반올림

SELECT ROUND(24.562, 2) --24.56

FLOOR: 버림

소수점 이하 버림(값보다 작은 정수 중 가장 큰 수를 가져옴)

SELECT FLOOR(24.562) --24

CEIL: 올림

가장 가까운 정수로 올림

SELECT CEIL(24.562) --25

TRUNCATE: 제거

n째 자리까지 남기고 제거

SELECT TRUNCATE(24.562, 2) --24.56
profile
SQL 끄적끄적

0개의 댓글