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.