Dans PostgreSQL, le floor() La fonction est utilisée pour arrondir un nombre à l'entier inférieur le plus proche.
C'est fondamentalement l'opposé de ceiling() , qui arrondit un nombre up .
C'est aussi similaire à round() , sauf qu'il ne fait qu'arrondir à l'inférieur. Le round() la fonction arrondira ou vers le bas au besoin.
Syntaxe
La syntaxe ressemble à ceci :
floor(dp or numeric)
Où dp indique double precision .
Le type de retour est le même que le type d'entrée.
Exemple
Voici un exemple pour démontrer son utilisation.
SELECT floor(3.99); Résultat :
3
Dans ce cas, les secondes fractionnaires sont 99 et le nombre est arrondi à l'entier inférieur le plus proche.
Sans surprise, j'obtiens le même résultat si je diminue les fractions de seconde pour dire 15.
SELECT floor(3.15); Résultat :
3
Nombres négatifs
Voici un exemple qui utilise des nombres négatifs.
SELECT
floor(-3.99),
floor(-3.15); Résultat :
floor | floor -------+------- -4 | -4
Sol() vs Rond()
Voici un exemple qui illustre la différence entre floor() et round() .
SELECT
floor(3.99),
round(3.99); Résultat :
floor | round -------+------- 3 | 4
Cependant, si je diminue les fractions de seconde en dessous de 50, elles renvoient toutes les deux le même résultat.
SELECT
floor(3.49),
round(3.49); Résultat :
floor | round -------+------- 3 | 3
Plancher() vs Plafond()
Postgres a aussi un ceiling() fonction, qui est similaire à floor() sauf qu'il arrondit toujours le nombre vers le haut .
Voici un exemple qui montre les deux syntaxes côte à côte.
SELECT
ceiling(12.80),
floor(12.80); Résultat :
ceiling | floor ---------+------- 13 | 12
Et voici un exemple qui utilise des valeurs négatives.
SELECT
ceiling(-12.30),
floor(-12.30); Résultat :
ceiling | floor ---------+------- -12 | -13