Fonction FLOOR() de MySQL
La fonction `FLOOR()` de MySQL est utilisée pour retourner la plus grande valeur entière inférieure ou égale à un nombre donné. Il arrondit un nombre à virgule flottante à l'entier inférieur le plus proche, en opérant à la fois sur des nombres positifs et négatifs.
Utilisation
La fonction `FLOOR()` est couramment utilisée lorsque vous devez tronquer des valeurs décimales en nombres entiers sans les arrondir. Cela peut s'avérer utile dans des scénarios tels que le calcul de remises ou la gestion d'une logique basée sur des nombres entiers.
sql
FLOOR(number);
Dans cette syntaxe, `number` est l'expression numérique que vous voulez arrondir. Il peut s'agir d'une constante, d'une valeur de colonne ou d'une expression plus complexe.
Exemples
1. Utilisation de base
sql
SELECT FLOOR(3.75);
Cette requête renvoie `3`, car `FLOOR()` arrondit 3.75 au nombre entier le plus proche.
2. Utilisation de FLOOR() avec des nombres négatifs
sql
SELECT FLOOR(-4.2);
Dans cet exemple, la fonction renvoie `-5`, puisque `-5` est le plus grand entier inférieur ou égal à `-4.2`, ce qui illustre le concept d'arrondi vers le bas avec des nombres négatifs.
3. Application de FLOOR() dans une requête de tableau
sql
SELECT product_name, FLOOR(price) AS discounted_price
FROM products;
Cette requête sélectionne le nom de chaque produit et applique la fonction `FLOOR()` à la colonne `price`, affichant ainsi la composante entière de chaque prix sous la forme `discounted_price`.
4. Utilisation de FLOOR() avec des zéros et des grands nombres
sql
SELECT FLOOR(0), FLOOR(123456789.987);
Cette requête démontre que `FLOOR()` renvoie `0` pour zéro et `123456789` pour un grand nombre, montrant un comportement cohérent à travers différentes plages d'entrée.
5. Combinaison de FLOOR() avec d'autres fonctions
sql
SELECT FLOOR(ABS(-5.7) * 2);
Ici, `FLOOR()` est utilisé en conjonction avec `ABS()` pour arrondir à la baisse la valeur absolue de `-5.7` multiplié par `2`, illustrant son utilisation dans des expressions plus complexes.
Conseils et bonnes pratiques
- A utiliser pour les calculs sur les nombres entiers. `FLOOR()` est idéal lorsque vous travaillez avec des entiers dans des calculs, évitant les arrondis inattendus.
- Tenez compte des performances. Bien que `FLOOR()` soit généralement efficace, son utilisation dans des colonnes ou des vues calculées peut nécessiter des stratégies d'indexation pour des performances optimales.
- Soyez conscient des valeurs négatives. Gardez à l'esprit que `FLOOR()` peut produire des résultats inattendus avec des nombres négatifs en raison de son comportement d'arrondi vers le bas.
- Combinez avec d'autres fonctions. Utilisez `FLOOR()` avec d'autres fonctions comme `ABS()` ou `MOD()` pour des opérations mathématiques plus complexes.