Retour à la liste des articles Articles
13 minutes de lecture

Fonctions numériques SQL

Passez en revue toutes les fonctions numériques SQL, y compris leurs définitions et leurs exemples.

Les fonctions numériques de SQL effectuent des opérations sur les nombres. Elles prennent un ou plusieurs nombres en argument et renvoient un nombre en sortie. Notez que les nombres peuvent être de différents types de données, y compris des entiers, des doubles et des flottants. Pour en savoir plus sur les types de données numériques et décimales, cliquez ici.

Les fonctions numériques SQL peuvent être divisées en fonctions scalaires et agrégées. Les fonctions scalaires calculent un résultat pour chaque ligne d'entrée individuellement. Par exemple, l'application de la fonction ABS() à une colonne produit la valeur absolue pour chaque ligne de cette colonne. En revanche, les fonctions agrégées opèrent sur les valeurs de plusieurs lignes pour produire un résultat - par exemple, l'application de la fonction MAX() à une colonne produit la valeur la plus élevée de toutes les lignes de cette colonne.

Consultez notre cours sur Fonctions SQL standards qui comprend des exercices sur ces types de fonctions :

  • Numérique
  • Texte
  • Date et heure
  • Agrégat

Effectuez les exercices pour réviser et consolider vos connaissances, puis mettez-les à l'épreuve en répondant au quiz final.

Fonctions numériques scalaires SQL

Les fonctions numériques scalaires SQL manipulent des valeurs individuelles, à la manière d'une calculatrice.

Function

Description

Further reading

+

→ Takes two numbers.

← Adds the numbers and returns the result.

 

-

→ Takes two numbers.

← Subtracts the numbers and returns the result.

* How to subtract values in SQL

*

→ Takes two numbers.

← Multiplies the numbers and returns the result.

* How to multiply values in SQL

/

→ Takes two numbers.

← Divides the numbers and returns the result.

* How the division operator works in SQL

* How to handle division by zero in SQL

* How to divide columns in MySQL or Oracle

* How to divide columns in SQL Server, PostgreSQL, or SQLite

ABS()

→ Takes one number.

← Returns the absolute value of the number.

* How to compute an absolute value in SQL

ACOS()

→ Takes a number between -1 and 1.

← Returns the arc cosine value in radians.

 

ASIN()

→ Takes a number between -1 and 1.

← Returns the arc sine value in radians.

 

ATAN()

→ Takes one number.

← Returns the arc tangent value in radians.

 

CEILING()

→ Takes one number.

← Returns the smallest integer value that is greater than or equal to the number.

* How to round up a number to the nearest integer in SQL

COS()

→ Takes one number.

← Returns the cosine value in radians.

 

COT()

→ Takes one number.

← Returns the cotangent value in radians.

 

DEGREES()

→ Takes a number in radians.

← Converts it to degrees and returns the result.

 

DIV()

→ Takes two numbers.

← Divides the numbers and returns the result.

* How to handle division by zero in SQL

* How to divide columns in MySQL or Oracle

* How to divide columns in SQL Server, PostgreSQL, or SQLite

EXP()

→ Takes one number.

← Calculates e to the power of the number and returns the result.

 

FLOOR()

→ Takes one number.

← Returns the greatest integer value that is less than or equal to the number.

* How to floor numbers in SQL

GREATEST()

→ Takes a list of numbers.

← Returns the greatest number.

 

LEAST()

→ Takes a list of numbers.

← Returns the smallest number.

 

LN()

→ Takes one number.

← Returns the natural logarithm of the number.

 

LOG()

→ Takes one number.

← Returns the natural logarithm of the number.

 

LOG10()

→ Takes one number.

← Returns the base 10 logarithm of the number.

 

MOD()

→ Takes two numbers.

← Divides the numbers and returns the remainder value (the modulus).

*How to get a remainder using MOD() in PostgreSQL, MS SQL Server, and MySQL

PI()

→ Takes no arguments.

← Returns the value of π.

 

POWER()

→ Takes two numbers.

← Raises the 1st number to the power of the 2nd number and returns the result.

 

RADIANS()

→ Takes a number in degrees.

← Converts it to radians and returns the result.

 

RAND()

→ Takes no arguments.
← Returns a random number between 0 (inclusive) and 1 (exclusive).

 

ROUND()

→ Takes one or two numbers.

← Rounds the 1st number to an integer or to as many decimal places as indicated by the 2nd number and returns the result.

* How to round numbers in SQL

* How to use the ROUND() function in SQL

SIGN()

→ Takes one number.

← Returns a positive or negative number indicating the sign of the number.

 

SIN()

→ Takes one number.

← Returns the sine value in radians.

 

 

SQRT()

→ Takes one number.

← Returns the square root value of the number.

* How to calculate a square root in SQL

SQUARE()

→ Takes one number.

← Returns the squared value of the number.

* How to calculate a square in SQL

TAN()

→ Takes one number.

← Returns the tangent value in radians.

 

TRUNC()

→ Takes two numbers.

← Truncates the 1st number to as many decimal places as indicated by the 2nd number and returns the result.

 

Les sections suivantes présentent des exemples pour chaque fonction.

Addition avec +

L'opérateur + renvoie le résultat de l'addition de deux nombres.

SELECT 3 + 2 AS sum;
sum
5

Soustraction avec -

L'opérateur - renvoie le résultat de la soustraction de deux nombres.

SELECT 3 - 2 AS difference;
difference
1

Consultez cet article pour en savoir plus sur la façon de soustraire des valeurs en SQL.

Multiplication avec *

L'opérateur * renvoie le résultat de la multiplication de deux nombres.

SELECT 3 * 2 AS product;
product
6

Suivez cet article pour en savoir plus sur la façon de multiplier des valeurs en SQL.

Division avec /

L'opérateur / renvoie le résultat de la division de deux nombres.

SELECT 4 / 2 AS quotient;
quotient
2

Lisez ces articles pour en savoir plus :

ABS()

La fonction ABS() renvoie la valeur absolue d'un nombre donné.

SELECT ABS(-9) AS abs;
abs
9

Consultez cet article pour en savoir plus sur le calcul d'une valeur absolue en SQL.

ACOS()

La fonction ACOS() prend un nombre entre -1 et 1 et renvoie la valeur de l'arc cosinus en radians.

SELECT ACOS(1) AS acos;
acos
0

ASIN()

La fonction ASIN() prend un nombre entre -1 et 1 et renvoie la valeur de l'arc sinus en radians.

SELECT ASIN(0) AS asin;
asin
0

ATAN()

La fonction ATAN() renvoie la valeur de l'arc tangent en radians.

SELECT ATAN(0) AS atan;
atan
0

CEILING()

La fonction CEILING() renvoie la plus petite valeur entière supérieure ou égale à un nombre donné.

SELECT CEILING(5.5) AS ceiling;
ceiling
6

Lisez cet article pour en savoir plus sur la façon d'arrondir un nombre à l'entier supérieur en SQL.

COS()

La fonction COS() renvoie la valeur du cosinus en radians.

SELECT COS(0) AS cos;
cos
1

COT()

La fonction COT() renvoie la valeur de la cotangente en radians.

SELECT COT(PI()/2) AS cot;
cot
0

DEGREES()

La fonction DEGREES() convertit un nombre donné de radians en degrés.

SELECT DEGREES(PI()) AS degrees;
degrees
180

DIV()

La fonction DIV() renvoie le résultat de la division de deux nombres.

SELECT DIV(4, 2) AS div;
div
2

Consultez ces articles pour en savoir plus :

EXP()

La fonction EXP() retourne e à la puissance d'un nombre donné.

SELECT EXP(0) AS exp;
exp
1

FLOOR()

La fonction FLOOR() renvoie la plus grande valeur entière inférieure ou égale à un nombre donné.

SELECT FLOOR(5.5) AS floor;
floor
5

Lisez cet article pour en savoir plus sur la façon de calculer le plancher des nombres en SQL.

GREATEST()

La fonction GREATEST() renvoie le plus grand nombre d'une liste donnée.

SELECT GREATEST(1, 2, 3, 4, 5) AS greatest;
greatest
5

LEAST()

La fonction LEAST() renvoie le plus petit nombre d'une liste donnée.

SELECT LEAST(1, 2, 3, 4, 5) AS least;
least
1

LN()

La fonction LN() renvoie le logarithme naturel d'un nombre donné.

SELECT LN(1) AS ln;
ln
0

LOG()

La fonction LOG() renvoie le logarithme naturel d'un nombre donné.

SELECT LOG(1) AS log;
log
0

LOG10()

La fonction LOG10() renvoie le logarithme de base 10 d'un nombre donné.

SELECT LOG10(100) AS log10;
log10
2

MOD()

La fonction MOD() renvoie le reste de la division de deux nombres donnés.

SELECT MOD(5, 2) AS mod;
mod
1

PI()

La fonction PI() renvoie la valeur de π.

SELECT PI() AS pi;
pi
3.141592653589793

POWER()

La fonction POWER() renvoie le premier nombre donné élevé à la puissance du deuxième nombre donné.

SELECT POWER(2, 3) AS power;
power
8

RADIANS()

La fonction RADIANS() convertit un nombre donné de degrés en radians.

SELECT RADIANS(180) AS radians;
radians
3.141592653589793

RAND() ou RANDOM()

La fonction RAND() (ou RANDOM()) renvoie un nombre aléatoire compris entre 0 (inclus) et 1 (exclu).

SELECT RAND() AS random;
random
0.5599700481846526

ROUND()

La fonction ROUND() arrondit un nombre donné à un entier ou à un nombre spécifié de décimales.

SELECT ROUND(5.4) AS round;
round
5
SELECT ROUND(5.6) AS round;
round
6
SELECT ROUND(5.4567, 2) AS round;
round
5.46

Consultez ces articles pour en savoir plus sur la façon d'arrondir les nombres en SQL et sur l'utilisation de la fonction ROUND() en SQL.

SIGN()

La fonction SIGN() renvoie -1 (si l'argument est un nombre négatif), 1 (si l'argument est un nombre positif) ou 0 (si l'argument est un zéro) pour indiquer le signe d'un nombre donné.

SELECT SIGN(-3) AS sign;
sign
-1
SELECT SIGN(3) AS sign;
sign
1

SIN()

La fonction SIN() renvoie la valeur du sinus en radians.

SELECT SIN(PI()) AS sin;
sin
0

SQRT()

La fonction SQRT() renvoie la valeur de la racine carrée d'un nombre donné.

SELECT SQRT(9) AS sqrt;
sqrt
3

Consultez cet article pour savoir comment calculer une racine carrée en SQL.

SQUARE()

La fonction SQUARE() renvoie la valeur au carré d'un nombre donné.

SELECT SQUARE(3) AS square;
square
9

Suivez cet article pour apprendre comment calculer un carré en SQL.

TAN()

La fonction TAN() renvoie la valeur de la tangente en radians.

SELECT TAN(0) AS tan;
tan
0

TRUNC()

La fonction TRUNC() tronque un nombre donné au nombre de décimales spécifié.

SELECT TRUNC(12.345, 1) AS trunc;
trunc
12.3

Fonctions d'agrégat

Les fonctions d'agrégation effectuent des calculs sur un ensemble de nombres, en prenant toutes les valeurs d'une colonne et en effectuant des calculs basés sur des groupes de données définis.

Aggregate function

Description

Further reading

AVG()

→ Takes a column of a numeric data type.

← Returns the average of all numbers.

* How to find the average of a numeric column in SQL

* The SQL AVG() function explained with examples

* How to filter records with AVG

 

COUNT()

→ Takes a column of a numeric data type.

← Returns the number of rows.

*A detailed guide to the SQL COUNT() function

*What is the difference between COUNT(*), COUNT(column), and COUNT(DISTINCT)?

*How to use COUNT() with GROUP BY

*How to count distinct values in SQL

* How to count the number of rows in a table in SQL

*How to filter records with COUNT

MAX()

→ Takes a column of a numeric data type.

← Returns the greatest number.

*SQL MIN() and MAX() functions explained in 6 examples

*How to find the maximum value of a numeric column in SQL

* How to find rows with the maximum value

MIN()

→ Takes a column of a numeric data type.

← Returns the smallest number.

*SQL MIN() and MAX() functions explained in 6 examples

*How to find the minimum value of a column in SQL

*How to find rows with the minimum value

SUM()

→ Takes a column of a numeric data type.

← Returns the sum of all numbers.

*SQL SUM() function explained with 5 practical examples

*How to use SUM() with GROUP BY

*How to sum values in a column in SQL

*How to filter records with SUM

 

Les sections suivantes présentent des exemples de chaque fonction utilisant le tableau des nombres:

categorynumber
A1
A2
A3
B4
B5
B6

AVG()

La fonction AVG() calcule la moyenne de toutes les valeurs d'une colonne donnée.

SELECT AVG(number) AS avg
FROM numbers;
avg
3.5

Elle peut également renvoyer la moyenne de chaque groupe :

SELECT category, AVG(number) AS avg
FROM numbers
GROUP BY category;
categoryavg
A2
B5

Lisez ces articles pour voir :

COUNT()

La fonction COUNT() renvoie le nombre de valeurs non nulles dans une colonne donnée.

SELECT COUNT(number) AS count
FROM numbers;
count
6

Elle renvoie également le nombre de valeurs dans un groupe :

SELECT category, COUNT(number) AS count
FROM numbers
GROUP BY category;
categorycount
A3
B3

Pour en savoir plus sur cette fonction :

MAX()

La fonction MAX() renvoie le plus grand nombre d'une colonne donnée.

SELECT MAX(number) AS max
FROM numbers;
max
6

Elle renvoie également la plus grande valeur par groupe :

SELECT category, MAX(number) AS max
FROM numbers
GROUP BY category;
categorymax
A3
B6

Lisez ces articles pour voir :

MIN()

La fonction MIN() renvoie le plus petit nombre d'une colonne donnée.

min
1

Elle renvoie également la plus petite valeur par groupe :

SELECT category, MIN(number) AS min
FROM numbers
GROUP BY category;
categorymin
A1
B4

Consultez ces articles pour plus d'informations :

SUM()

La fonction SUM() renvoie la somme de toutes les valeurs d'une colonne donnée.

SELECT SUM(number) AS sum
FROM numbers;
sum
21

Elle renvoie également la somme de toutes les valeurs d'un groupe :

SELECT category, SUM(number) AS sum
FROM numbers
GROUP BY category;
categorysum
A6
B15

Consultez ces articles pour voir :

Plus d'aide sur les fonctions numériques SQL

SQL fournit de nombreuses fonctions différentes - fonctions numériques, fonctions de texte, fonctions de date et d'heure, etc. Pour plus d'informations sur ces fonctions, consultez notre livre de recettes SQL et nos articles de blog.

Consultez également cette fiche d'aide gratuite sur les fonctions SQL. Vous pouvez la télécharger, l'imprimer et la garder à portée de main pendant que vous travaillez et apprenez. Une fois de plus, je vous encourage à consulter notre cours sur Fonctions SQL standards si vous voulez vraiment vous exercer. Bon apprentissage !