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