Probleem:
U wilt een getal naar boven afronden op het dichtstbijzijnde gehele getal.
Voorbeeld:
Onze database heeft een tabel met de naam huur met gegevens in de volgende kolommen:id
, city
, area
, en bikes_for_rent
.
id | stad | gebied | bikes_for_rent |
---|---|---|---|
1 | Los Angeles | 1302.15 | 1000 |
2 | Feniks | 1340.69 | 500 |
3 | Fargo | 126,44 | 101 |
Laten we de naam van elke stad tonen, samen met de verhouding van de oppervlakte tot het aantal te huur fietsen. Deze verhouding moet een geheel getal zijn.
Oplossing:
SELECT city, CEILING(area/bikes_for_rent) AS ratio FROM rent;
De zoekopdracht retourneert elke stad met de verhouding als een geheel getal van het gebied per fiets naar boven afgerond.
id | stad | verhouding |
---|---|---|
1 | Los Angeles | 2 |
2 | Feniks | 3 |
3 | Fargo | 2 |
Discussie:
Net als zijn tegenhanger vloer, is plafond een wiskundige bewerking die een getal neemt en naar boven afrondt op het dichtstbijzijnde gehele getal. Het plafond van 5 is bijvoorbeeld 5, en dat geldt ook voor het plafond van 4,1.
SQL gebruikt het CEILING
functie om deze berekening uit te voeren. Er is één argument voor nodig:de kolom waarvan u de waarden naar boven wilt afronden op het dichtstbijzijnde gehele getal.
In ons voorbeeld willen we berekenen hoeveel vierkante meter (afgerond op het dichtstbijzijnde gehele getal) er per fiets zijn. In ons voorbeeld gebruikten we CEILING
zoals zo:CEILING(area/bikes_for_rent)
). Dit geeft een geheel getal terug, geen float.