Problem:
Chcesz znaleźć wartość bezwzględną liczby.
Przykład:
Chcesz obliczyć wartość bezwzględną (aka moduł) każdej liczby w kolumnie numbers
z tabeli data
.
liczby |
---|
-3,2 |
0 |
20 |
Rozwiązanie:
SELECT ABS(numbers) AS absolute_values FROM data;
Wynik:
wartości_bezwzględne |
---|
3.2 |
0 |
20 |
Dyskusja:
Aby obliczyć wartość bezwzględną liczby, użyj ABS()
funkcjonować. Ta funkcja przyjmuje liczbę jako argument i zwraca jej wartość bez znaku minus, jeśli taki istnieje. Zwracana wartość zawsze będzie nieujemna – zero dla argumentu 0, dodatni dla każdego innego argumentu. Zwróć uwagę, że zwrócona wartość będzie się różnić od argumentu tylko wtedy, gdy argument jest ujemny.
Jeśli z jakiegoś powodu musisz przekonwertować tylko wartości dodatnie na ich ujemne odpowiedniki i pozostawić inne wartości (tj. zero i ujemne) niezmienione, możesz użyć znaku minus przed ABS()
funkcja.
SELECT -ABS(numbers) AS non_positive FROM data;
Wynik będzie następujący:
niedodatni |
---|
-3,2 |
0 |
-20 |