Последние новости:

Поиск по сайту:

Приятно вспоминать невзгоды, если они миловали (Цицерон).

MySQL. Функция ABS

01.08.2019
MySQL. Математические функции

Описание: в этой статье вы узнаете, как использовать функцию ABS() в MySQL для возврата абсолютного значения числа.

 

Обзор функции ABS() в MySQL

Функция ABS() представляет собой математическую функцию, которая возвращает абсолютное (положительное) значение числа.

Ниже показан синтаксис функции ABS():

ABS(n)

 

В этом синтаксисе n — это буквальное число или выражение, которое оценивается как число. Если n — отрицательное число, функция ABS() меняет отрицательное значение на положительное. Если n равно нулю или положительно, функция ABS() не имеет никакого эффекта.

Тип данных возвращаемого значения совпадает с типом данных входного аргумента.

Следующий график иллюстрирует функцию ABS():

MySQL. Функция ABS

 

Примеры функций ABS() в MySQL

В следующем примере показаны результаты использования функции ABS() для четырех разных чисел:

SELECT
ABS(-10),
ABS(0),
ABS(10);

 

Вот результат запроса:

MySQL. Функция ABS

 

 

Использование функции ABS в столбцах таблицы

Мы будем использовать таблицу products для демонстрации:

MySQL. Функция ABS

Следующий запрос находит код продукта, MSRP и отклонение MSRP продукта от среднего значения MSRP продукта в его линейке продуктов.

SELECT
productName,
productLine,
msrp,
ABS(
ROUND(
msrp - AVG(msrp) OVER (
PARTITION BY productLine
)
)
) deviation
FROM
products
ORDER BY
productName;

 

Вот вывод:

MySQL. Функция ABS

 

 

Давайте разберем расчет столбца отклонений.

Во-первых, оконная функция AVG() возвращает среднее значение MSRP для каждого продукта в своей линейке продуктов:

AVG(msrp) OVER ( PARTITION BY productLine )

 

Во-вторых, следующая формула возвращает разницу между MSRP и средней линейкой продуктов MSRP:

msrp - AVG(msrp) OVER (PARTITION BY productLine)

 

В-третьих, функция ROUND() округляет отклонение до нуля.

ROUND(
msrp - AVG(msrp) OVER (
PARTITION BY productLine
)
)

 

В-четвертых, поскольку у некоторых продуктов MSRP ниже, чем среднее значение MSRP, их отклонения от среднего значения являются отрицательными. Функция ABS() применяется ко всем отклонениям и будет возвращать абсолютные значения.

Из этой статьи вы узнали, как использовать функцию ABS() в MySQL для получения абсолютного значения числа.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Читайте также

Статьи партнеров:

0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить

Спасибо! Ваша заявка принята

close

Спасибо! Ваша заявка принята

close