SIGN |
Signe |
|---|---|
| Oracle Database SQL | Oracle 7 ou supérieure |
Syntaxe
| Sign(Nombre) |
Paramètres
| Nom | Description |
|---|---|
| Nombre | Ce paramètre permet d'indiquer l'expression contenant le nombre à traiter |
Retour
| Valeur | Description |
|---|---|
| -1 | Cette valeur indique un nombre négatif |
| 0 | Cette valeur indique un nombre nulle |
| 1 | Cette valeur indique un nombre positif |
Description
Cette fonction retourne le signe d'une valeur numérique.
Remarques
- La fonction SIGN permet de déterminer rapidement le signe d'un nombre, ce qui est souvent utile dans des conditions ou des calculs nécessitant de savoir si une valeur est positive, négative ou nulle.
- Elle prend un seul paramètre numérique, appelé Nombre, qui peut être un entier, un flottant ou tout type numérique supporté par Oracle, garantissant ainsi une grande flexibilité.
- La fonction retourne une valeur entière parmi trois possibles : -1 si le nombre est strictement négatif, 0 si le nombre est nul, et 1 si le nombre est strictement positif.
- Cette fonction est particulièrement utile pour simplifier des expressions conditionnelles en évitant d'écrire plusieurs comparaisons complexes pour tester la positivité ou négativité d'une valeur.
- Elle peut être utilisée dans des requêtes SQL, mais aussi dans des blocs PL/SQL, ce qui en fait un outil polyvalent pour la programmation Oracle.
- La fonction SIGN ne modifie pas la valeur passée en paramètre, elle se contente de renvoyer l'information sur son signe, ce qui la rend purement évaluative.
- Si le paramètre est une expression qui évalue à une valeur non numérique ou NULL, la fonction retournera NULL, car le signe d'une valeur non définie ou non numérique n'a pas de sens.
- La fonction est optimisée pour les performances dans Oracle, car le calcul du signe est simple et rapide, ce qui la rend adaptée aux traitements sur de larges volumes de données.
- SIGN peut être utilisée dans des expressions plus complexes, par exemple pour inverser un signe en multipliant par le résultat de la fonction, ou pour appliquer des conditions basées sur le signe d'un résultat.
- L'utilisation de SIGN améliore la lisibilité du code SQL en remplaçant plusieurs tests conditionnels par un seul appel de fonction explicite et clair.
- Elle est également pratique pour les analyses statistiques ou financières où l'on doit catégoriser rapidement des valeurs en gains (positifs), pertes (négatifs), ou neutres (zéro).
- Enfin, étant disponible depuis Oracle 7, la fonction SIGN est bien établie, stable, et compatible avec presque toutes les versions modernes d'Oracle, ce qui garantit sa fiabilité dans les applications legacy comme dans les systèmes récents.
Exemple
Voici quelques exemples typiques de l'utilisation de cette fonction :
- SELECT 'Sign(-910) = ' As Text, Sign(-910) As Result FROM DUAL UNION
- SELECT 'Sign(-1) = ' As Text, Sign(-1) As Result FROM DUAL UNION
- SELECT 'Sign(0) = ' As Text, Sign(0) As Result FROM DUAL UNION
- SELECT 'Sign(10) = ' As Text, Sign(10) As Result FROM DUAL UNION
- SELECT 'Sign(1) = ' As Text, Sign(1) As Result FROM DUAL UNION
- SELECT 'Sign(100) = ' As Text, Sign(1000) As Result FROM DUAL;
on obtiendra le résultat suivant :
| TEXT | RESULT |
| Sign(-1) = | -1 |
| Sign(-910) = | -1 |
| Sign(0) = | 0 |
| Sign(1) = | 1 |
| Sign(10) = | 1 |
| Sign(100) = | 1 |
Voir également
Article - Les géants de l'informatique - Oracle
Dernière mise à jour : Lundi, le 11 mai 2015