IT’s Ha

MS-SQL - 반올림(ROUND), 올림(CEILING), 내림(FLOOR) 본문

SQL/MS-SQL

MS-SQL - 반올림(ROUND), 올림(CEILING), 내림(FLOOR)

Deleloper Ha 2025. 2. 17. 15:15
728x90
반응형

안녕하세요.
 SQL Server의 반올림, 올림, 내림 함수에 대해  공유드립니다. 데이터베이스를 다루다 보면 숫자 데이터를 처리하는 과정에서 반올림, 올림, 내림이 필요할 때가 많습니다. 이번 포스팅에서는 SQL Server에서 제공하는 ROUND, CEILING, FLOOR 함수에 대해 자세히 알아보겠습니다.

SQL Server에서는 숫자를 처리할 때 다양한 함수들을 제공합니다. 그 중에서도 반올림, 올림, 내림 함수는 숫자를 원하는 형태로 변환하는 데 매우 유용합니다. 이 함수들은 각각의 목적에 맞게 사용되며, 데이터의 정확성을 높이는 데 기여합니다.

ROUND 함수의 사용법

ROUND 함수는 주어진 숫자를 지정한 자릿수로 반올림하는 데 사용됩니다. 기본적인 문법은 다음과 같습니다:

ROUND ( numeric_expression , length [, function ] )

  • numeric_expression : 반올림할 숫자입니다.
  • length : 반올림할 자릿수입니다. 양수일 경우 소수점 자리, 음수일 경우 정수 자리입니다.
  • function : 선택적 인자로, 0 또는 생략 시 반올림, 1일 경우 내림을 의미합니다.

예를 들어, 숫자 123.567을 소수점 두 자리로 반올림하고 싶다면 다음과 같은 쿼리를 사용할 수 있습니다:

sql SELECT ROUND(123.567, 2) AS RoundedValue;

이 쿼리의 결과는 123.57이 됩니다.

이미지 출처

CEILING 함수의 사용법

CEILING 함수는 주어진 숫자를 올림하여 가장 가까운 정수로 변환합니다. 이 함수는 소수점 이하의 값을 무조건 올림 처리합니다. 문법은 다음과 같습니다:

CEILING ( numeric_expression )

예를 들어, -2.5를 올림하면 -2가 됩니다. 다음과 같은 쿼리를 사용할 수 있습니다:

sql SELECT CEILING(-2.5) AS CeilingValue;

이 쿼리의 결과는 -2입니다.

이미지 출처

FLOOR 함수의 사용법

FLOOR 함수는 주어진 숫자를 내림하여 가장 가까운 정수로 변환합니다. 이 함수는 소수점 이하의 값을 무조건 내림 처리합니다. 문법은 다음과 같습니다:

FLOOR ( numeric_expression )

예를 들어, 123.567을 내림하면 123이 됩니다. 다음과 같은 쿼리를 사용할 수 있습니다:

sql SELECT FLOOR(123.567) AS FloorValue;

이 쿼리의 결과는 123입니다.

이미지 출처

각 함수의 차이점 및 사용 예시

이제 각 함수의 차이점을 정리해 보겠습니다.

  • ROUND : 지정한 자릿수로 반올림합니다. 예를 들어, 123.567을 소수점 한 자리로 반올림하면 123.6이 됩니다.
  • CEILING : 항상 올림합니다. 예를 들어, 123.1은 124로 변환됩니다.
  • FLOOR : 항상 내림합니다. 예를 들어, 123.9는 123으로 변환됩니다.

이러한 함수들은 데이터의 정확성을 높이는 데 매우 유용합니다.

이미지 출처

실제 쿼리 예제

다음은 SQL Server에서 반올림, 올림, 내림을 사용하는 예제입니다:

sql SELECT ROUND(123.567, 0) AS RoundedValue, CEILING(123.567) AS CeilingValue, FLOOR(123.567) AS FloorValue;

이 쿼리의 결과는 다음과 같습니다:

  • RoundedValue: 124
  • CeilingValue: 124
  • FloorValue: 123

이처럼 각 함수는 서로 다른 결과를 반환하며, 상황에 맞게 적절히 사용해야 합니다.

마무리 및 추가 자료

SQL Server의 반올림, 올림, 내림 함수는 데이터 처리에서 매우 중요한 역할을 합니다. 이 포스팅을 통해 각 함수의 사용법과 차이점을 이해하는 데 도움이 되었기를 바랍니다. 궁금하신 점은 댓글이나 메일로 부탁드립니다. 감사합니다.

728x90
반응형

'SQL > MS-SQL' 카테고리의 다른 글

SQL Join  (0) 2025.02.20
MSSQL - Optimizer(옵티마이저)  (0) 2025.02.17
[MSSQL]테이블 용량 확인  (0) 2024.03.13
[MS-SQL] DB 백업, DB 리스토어  (0) 2023.06.29
[MS-SQL] 테이블 파티션 인덱스 설정  (0) 2023.05.10
Comments