Mysql
 sql >> Base de données >  >> RDS >> Mysql

Fonctionnement de la fonction OCT() dans MySQL

Dans MySQL, le OCT() La fonction est utilisée pour convertir de décimal en octal.

Plus précisément, il renvoie une représentation sous forme de chaîne de la valeur octale de son argument.

Syntaxe

La syntaxe de base ressemble à ceci :

OCT(N)

n est la valeur à convertir. Cet argument est un nombre longlong (BIGINT).

Exemple 1 - Utilisation de base

Voici un exemple de son fonctionnement :

SELECT OCT(8);

Résultat :

+--------+
| OCT(8) |
+--------+
| 10     |
+--------+

Le résultat est 10 car c'est l'équivalent octal de 8 du système décimal.

Exemple 2 – Diverses valeurs

Voici un autre exemple avec différentes valeurs :

SELECT 
  OCT(10),
  OCT(20),
  OCT(30),
  OCT(100),
  OCT(1000);

Résultat :

+---------+---------+---------+----------+-----------+
| OCT(10) | OCT(20) | OCT(30) | OCT(100) | OCT(1000) |
+---------+---------+---------+----------+-----------+
| 12      | 24      | 36      | 144      | 1750      |
+---------+---------+---------+----------+-----------+

Exemple 3 – Expressions

Vous pouvez également utiliser des expressions comme celles ci-dessous :

SELECT 
  OCT(100 + 2),
  OCT(100 * 2),
  OCT(100 / 2),
  OCT(100 - 2);

Résultat :

+--------------+--------------+--------------+--------------+
| OCT(100 + 2) | OCT(100 * 2) | OCT(100 / 2) | OCT(100 - 2) |
+--------------+--------------+--------------+--------------+
| 146          | 310          | 62           | 142          |
+--------------+--------------+--------------+--------------+

Qu'est-ce qu'Octal ?

Octal est un système de notation numérique qui a 8 comme base. Cela contraste avec le décimal, qui a 10 comme base.

En décimal, on compte jusqu'à 9, puis on recommence en ajoutant un zéro après le premier chiffre (par exemple après 9 vient 10, soit 1 auquel on ajoute un zéro).

En octal (base 8) cependant, on ne compte que jusqu'à 7 avant de recommencer et d'ajouter un zéro. Donc 10 en octal équivaut à 8 en décimal.

Voici un tableau pour illustrer :

Décimal (Base 10) Octal (Base 8)
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 10
9 11
10 12
11 13
12 14
13 15
14 16
15 17
16 20
17 21
18 22
19 23
20 24