Проблемы округления десятичных цифр в SQL

Автор: John Pratt
Дата создания: 14 Январь 2021
Дата обновления: 17 Июнь 2024
Anonim
Типичные вопросы на СОБЕСЕДОВАНИИ по SQL / Примеры задач и их решения
Видео: Типичные вопросы на СОБЕСЕДОВАНИИ по SQL / Примеры задач и их решения

Содержание

Язык SQL автоматически округляет числа, если столбец таблицы, в котором вы будете сохранять, допускает только определенную точность десятичных знаков. Вы можете работать с точными задачами, используя SQL-функцию «round». Эта функция позволяет вам контролировать, как SQL хранит числовые значения в таблицах базы данных.


Узнайте, как округлять числа в SQL (Hemera Technologies / AbleStock.com / Getty Images)

проблема

Вы заметите проблему округления SQL при просмотре данных в таблицах. Отображаемое числовое значение отличается от того, которое вы сохранили с помощью команды «вставить». Типы данных столбцов SQL позволяют вам установить точность десятичной точки. Если вы хотите иметь только два десятичных знака и пытаться сохранить число с тремя, SQL округляет значение.

Структура таблицы

Вы можете изменить тип данных столбца с помощью редактора таблиц SQL. Вы можете редактировать свои таблицы в Microsoft SQL Server Management Studio, которая поставляется с SQL Server. Щелкните правой кнопкой мыши по столу и выберите «Изменить». Выберите точность в списке типов данных столбца, чтобы увеличить количество десятичных разрядов и исправить проблему округления.


Круглая функция

Если вы не хотите изменять тип данных таблицы, используйте функцию округления, чтобы изменить режим хранения числовых данных. Округление вверх, вниз или позволить функции выполнить стандартное округление десятичных значений. Например, округляется следующий код:

круглый (столбец, 2, -1)

Эта функция округляется в два знака после запятой, всегда вверх. Удаление параметра «-1» приводит к тому, что SQL выполняет стандартное округление, т. Е. Увеличивается, если значение больше или равно «5», и уменьшается, если значение ниже.

соображения

Когда вы изменяете поведение округления в SQL, вы также должны проверить любой столбец с суммой округленных чисел. Этот столбец будет иметь неправильное значение, поэтому вам нужно будет пересчитать сумму, чтобы исправить любые ошибки.