Dans SQL Server, le T-SQL LOG10()
function est une fonction mathématique qui renvoie le logarithme en base 10 de l'expression flottante spécifiée.
Vous spécifiez l'expression float comme argument.
Syntaxe
La syntaxe ressemble à ceci :
LOG10 ( float_expression )
Où expression_float est une expression de type float ou d'un type qui peut être implicitement converti en float.
Exemple 1 - Utilisation de base
Voici un exemple de base pour illustrer le fonctionnement de cette fonction.
SELECT LOG10(10) Résultat ;
Résultat :
+----------+| Résultat ||----------|| 1 |+----------+
Et voici un autre exemple utilisant différentes valeurs.
SELECT LOG10(100) '100', LOG10(1000) '1000', LOG10(3000) '3000', LOG10(10000) '10000';
Résultat :
+-------+--------+------------------+---------+ | 100 | 1000 | 3000 | 10000 ||-------+--------+------------------+---------|| 2 | 3 | 3.47712125471966 | 4 |+-------+--------+------------------+---------+Exemple 2 – Valeur négative
Voici un exemple de transmission d'une valeur négative.
SELECT LOG10(-4) Résultat ;Résultat :
Msg 3623, Niveau 16, État 1, Ligne 1Une opération en virgule flottante non valide s'est produite.Cet exemple renvoie un message d'erreur car le logarithme ne peut être renvoyé que pour les nombres positifs autres que 1.
Exemple 3 – Zéro
Voici un exemple de passage de zéro en argument (on obtient le même résultat que l'exemple précédent).
SELECT LOG10(0) Résultat ;Résultat :
Msg 3623, Niveau 16, État 1, Ligne 1Une opération en virgule flottante non valide s'est produite.Exemple 4 - Passe en 1
Passer la valeur 1 renvoie zéro.
SELECT LOG10(1) Résultat ;Résultat :
+----------+| Résultat ||----------|| 0 |+----------+Exemple 5 – Expressions
Vous pouvez également transmettre des expressions telles que :
SELECT LOG10(5*2) Résultat ;Résultat :
+----------+| Résultat ||----------|| 1 |+----------+C'est effectivement la même chose que de faire ceci :
SELECT LOG10(10) Résultat ;Résultat :
+----------+| Résultat ||----------|| 1 |+----------+LOG()
Transact-SQL a également le
LOG()
fonction qui renvoie le logarithme népérien d'un nombre.En fait, vous pouvez utiliser
LOG()
au lieu deLOG10()
si tu préfères. Pour ce faire, utilisez10
comme deuxième argument de la fonction. Exemple ci-dessous.SELECT LOG(100, 10) 'LOG', LOG10(100) 'LOG10' ;Résultat :
+-------+---------+| JOURNAL | LOG10 ||-------+---------|| 2 | 2 |+-------+---------+