Database
 sql >> Baza danych >  >> RDS >> Database

Jak zaokrąglać liczby w SQL

Problem:

Chcesz zaokrąglić liczbę do określonej liczby miejsc po przecinku.

Przykład:

Nasza baza danych zawiera tabelę o nazwie product z danymi w następujących kolumnach:id , name i price_net .

id imię price_net
1 chleb 2,34
2 rogaliki 1.22
3 rolka 0,68

Załóżmy, że na każdy produkt jest nałożony podatek w wysokości 24% i chcesz obliczyć cenę brutto każdego produktu (tj. po opodatkowaniu) i zaokrąglić wartość do dwóch miejsc po przecinku.

Rozwiązanie:

SELECT id, ROUND( price_net*1.24 , 2 ) as price_gross
FROM product;

To zapytanie zwraca cenę brutto zaokrągloną do dwóch miejsc po przecinku:

id price_brutto
1 2,90
2 1,51
3 0,84

Dyskusja:

Jeśli chcesz zaokrąglić liczbę zmiennoprzecinkową do określonej liczby miejsc dziesiętnych w SQL, użyj funkcji ZAOKR. Pierwszym argumentem tej funkcji jest kolumna, której wartości chcesz zaokrąglić; drugi argument jest opcjonalny i oznacza liczbę miejsc, do których chcesz zaokrąglić. Domyślnie, jeśli nie określisz drugiego argumentu, funkcja zaokrągla do najbliższej liczby całkowitej.

W tym przykładzie nie określimy liczby miejsc, do których chcemy zaokrąglić kolumnę:

SELECT id, ROUND(price_net*1.24) as price_gross
FROM product;

A oto odpowiedni wynik:

id price_brutto
1 3
2 2
3 1

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tworzenie modułu w języku Java 9 w środowisku Eclipse IDE, część 2

  2. Jak dezaktywować wtyczki z bazy danych WordPress

  3. Po raz ostatni NIE, nie możesz ufać IDENT_CURRENT()

  4. Jak filtrować rekordy za pomocą funkcji agregacji AVG

  5. Co to jest T-SQL?