
Funkcja ROUND w SQL to jedno z tych narzędzi, bez których trudno sobie wyobrazić operacje na liczbach zmiennoprzecinkowych. Za jej pomocą mogę zaokrąglać liczby do określonej liczby miejsc po przecinku, co przydaje się w raportowaniu, prezentacji danych czy analizie finansowej. W tym artykule przyjrzymy się szczegółowo, jak działa ROUND w języku SQL i jakie ma zastosowania.
Podstawowa składnia funkcji ROUND
Funkcja ROUND ma stosunkowo prostą składnię:
ROUND(liczba, liczba_miejsc)
Gdzie:
liczba– wartość numeryczna, którą chcę zaokrąglić,liczba_miejsc– określa, do ilu miejsc po przecinku liczba ma być zaokrąglona.
Przykład:
SELECT ROUND(123.456, 2);
Wynik:
123.46
Zaokrąglanie liczb całkowitych
Gdy jako drugi argument funkcji ROUND podam wartość 0, liczba zostanie zaokrąglona do najbliższej liczby całkowitej.
SELECT ROUND(7.8, 0);
Wynik:
8
Podobnie działa to w przypadku wartości ujemnych:
SELECT ROUND(-3.5, 0);
Wynik:
-4
Zaokrąglanie do wartości większych niż 0
Mogę również zaokrąglić liczbę do kilku miejsc po przecinku:
SELECT ROUND(45.6789, 3);
Wynik:
45.679
Zaokrąglanie do dziesiątek, setek i tysięcy
Nie każdy wie, ale ROUND pozwala też na zaokrąglanie do dziesiątek, setek i większych wartości. Wystarczy użyć wartości ujemnej jako drugiego argumentu.
SELECT ROUND(1234, -2);
Wynik:
1200
W ten sposób liczba 1234 została zaokrąglona do pełnych setek.
Różnice między SQL Server, MySQL i PostgreSQL
W różnych bazach danych ROUND działa podobnie, ale są niewielkie różnice. Na przykład w SQL Server mogę podać trzeci opcjonalny argument, który wymusza odcięcie wartości zamiast klasycznego zaokrąglania.
SELECT ROUND(123.456, 2, 1);
W tym przypadku wynik wynosi 123.45, ponieważ zamiast klasycznego zaokrąglenia następuje „obcięcie” wartości.
W MySQL i PostgreSQL funkcja ROUND nie obsługuje trzeciego argumentu i działa tylko w podstawowym zakresie.
Praktyczne zastosowania funkcji ROUND
W świecie baz danych funkcja ROUND przydaje się w wielu miejscach, między innymi:
- Podczas wyświetlania wyników obliczeń finansowych (np. ceny, podatki).
- W raportach, gdzie liczby muszą być prezentowane w estetycznej formie.
- Podczas konwersji wartości do określonych zakresów (np. grupowanie danych).
Poniżej znajduje się tabela przedstawiająca przykładowe operacje z funkcją ROUND oraz ich wyniki:
| Zapytanie SQL | Wynik |
|---|---|
SELECT ROUND(15.678, 2); |
15.68 |
SELECT ROUND(99.99, 0); |
100 |
SELECT ROUND(1234, -2); |
1200 |
SELECT ROUND(-4.4, 0); |
-4 |
Podsumowanie
Funkcja ROUND w SQL jest niezwykle przydatna i łatwa w użyciu. Pozwala zarówno zaokrąglać liczby do określonej liczby miejsc po przecinku, jak i do setek czy tysięcy. Warto pamiętać, że niektóre systemy baz danych oferują dodatkowe opcje, które wpływają na sposób zaokrąglania.
Podsumowując, jeśli pracuję z danymi liczbowymi i zależy mi na kontrolowaniu precyzji wyników, ROUND jest jedną z głównych funkcji, którą warto znać i stosować.
Inny ciekawy artykuł:
Jak działa CONVERT w języku SQL? Przykłady zastosowania
Opanuj SQL z moim kursem!
Poznasz zarówno podstawy, jak i zaawansowane zapytania analityczne (CTE, subqueries, window functions). Nauczysz się pracować na różnych silnikach – na kursie pracujemy zarówno na MySQL, jak i na Postgres. Wszystko zainstalujemy na Twoim komputerze, plus dostaniesz mnóstwo zestawów danych do ćwiczeń.
Zostań analitykiem danych – dołącz do KajoDataSpace!
Najlepsza ścieżka do zawodu analityka danych. Dostęp do pełnych wersji kursów online z Excela, SQLa, PowerBI, Tableau i Pythona z certyfikatami!
🟨 Ekskluzywana ale pomagająca sobie społeczność.
🟩 Ponad 75 godzin materiałów video.
🟨 Spotkania LIVE co miesiąc.
🟩 Mój osobisty mentoring.

