Problème :
Vous souhaitez arrondir un nombre à l'entier le plus proche.
Exemple :
Notre base de données a une table nommée rent avec des données dans les colonnes suivantes :id
, city
, area
, et bikes_for_rent
.
identifiant | ville | zone | vélos_à_louer |
---|---|---|---|
1 | Los Angeles | 1302.15 | 1000 |
2 | Phénix | 1340.69 | 500 |
3 | Fargo | 126,44 | 101 |
Montrons le nom de chaque ville ainsi que le rapport entre sa superficie et le nombre de vélos à louer. Ce rapport doit être un nombre entier.
Solution :
SELECT city, CEILING(area/bikes_for_rent) AS ratio FROM rent;
La requête renvoie chaque ville avec le ratio sous la forme d'un nombre entier de la surface arrondie par vélo.
identifiant | ville | rapport |
---|---|---|
1 | Los Angeles | 2 |
2 | Phénix | 3 |
3 | Fargo | 2 |
Discussion :
Comme son homologue floor, le plafond est une opération mathématique qui prend un nombre et l'arrondit au nombre entier le plus proche. Par exemple, le plafond de 5 est 5, tout comme le plafond de 4,1.
SQL utilise le CEILING
fonction pour effectuer ce calcul. Il prend un seul argument :la colonne dont vous souhaitez arrondir les valeurs à l'entier supérieur le plus proche.
Dans notre exemple, nous aimerions calculer combien de mètres carrés (arrondis à l'entier le plus proche) il y a par vélo. Dans notre exemple, nous avons utilisé CEILING
comme ceci :CEILING(area/bikes_for_rent)
). Cela renvoie un résultat entier, pas un flottant.