Problem:
Chcesz zaokrąglić liczbę do najbliższej liczby całkowitej.
Przykład:
Nasza baza danych zawiera tabelę o nazwie rent z danymi w następujących kolumnach:id , city , area i bikes_for_rent .
| id | miasto | obszar | rowery_do wypożyczenia |
|---|---|---|---|
| 1 | Los Angeles | 1302.15 | 1000 |
| 2 | Feniks | 1340.69 | 500 |
| 3 | Fargo | 126.44 | 101 |
Pokażmy nazwę każdego miasta wraz ze stosunkiem jego powierzchni do liczby rowerów do wynajęcia. Ten stosunek powinien być liczbą całkowitą.
Rozwiązanie:
SELECT city, CEILING(area/bikes_for_rent) AS ratio FROM rent;
Zapytanie zwraca każde miasto ze współczynnikiem jako liczbą całkowitą zaokrągloną w górę powierzchni na jeden rower.
| id | miasto | stosunek |
|---|---|---|
| 1 | Los Angeles | 2 |
| 2 | Feniks | 3 |
| 3 | Fargo | 2 |
Dyskusja:
Podobnie jak jego odpowiednik floor, pułap jest operacją matematyczną, która pobiera liczbę i zaokrągla ją do najbliższej liczby całkowitej. Na przykład pułap 5 to 5, podobnie jak pułap 4,1.
SQL używa CEILING funkcja do wykonania tego obliczenia. Zajmuje pojedynczy argument:kolumnę, której wartości chcesz zaokrąglić w górę do najbliższej liczby całkowitej.
W naszym przykładzie chcielibyśmy obliczyć, ile metrów kwadratowych (w zaokrągleniu do najbliższej liczby całkowitej) przypada na jeden rower. W naszym przykładzie użyliśmy CEILING na przykład:CEILING(area/bikes_for_rent) ). Zwraca wynik w postaci liczby całkowitej, a nie liczby zmiennoprzecinkowej.