Проблем:
Искате да намерите абсолютната стойност на число.
Пример:
Искате да изчислите абсолютната стойност (известна още като модул) на всяко число в колоната numbers
от таблицата data
.
числа |
---|
-3.2 |
0 |
20 |
Решение:
SELECT ABS(numbers) AS absolute_values FROM data;
Резултатът е:
абсолютни_стойности |
---|
3.2 |
0 |
20 |
Дискусия:
За да изчислите абсолютната стойност на число, използвайте ABS()
функция. Тази функция приема число като аргумент и връща стойността му без знака минус, ако има такъв. Върнатата стойност винаги ще е неотрицателна – нула за аргумент 0, положителен за всеки друг аргумент. Обърнете внимание, че върнатата стойност ще се различава от аргумента само ако аргументът е отрицателен.
Ако по някаква причина трябва да преобразувате само положителните стойности в техния отрицателен еквивалент и да оставите останалите (т.е. нулеви и отрицателни) стойности недокоснати, можете да използвате знак минус преди ABS()
функция.
SELECT -ABS(numbers) AS non_positive FROM data;
Резултатът ще бъде:
не_положителен |
---|
-3.2 |
0 |
-20 |