Database
 sql >> Base de données >  >> RDS >> Database

Comment arrondir un nombre à l'entier le plus proche en SQL

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.