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

2 façons de convertir un nombre en octal dans MySQL

Si vous devez convertir un nombre décimal en octal (base 8), deux fonctions vous viennent à l'esprit si vous utilisez MySQL. Une fonction est spécifiquement pour faire des conversions octales, l'autre est pour faire des conversions entre différentes bases. Ce sont les suivants :

OCT()
Cette fonction est utilisée spécifiquement pour convertir de décimal en octal.
CONV()
Cette fonction a un but plus général. Il vous permet de spécifier la base du nombre d'origine et le résultat. En d'autres termes, vous pouvez convertir de n'importe quelle base vers n'importe quelle base (tant que chaque base est comprise entre 2 et 36).

Plus d'informations sur ces deux fonctions ci-dessous.

La fonction OCT()

Comme mentionné, cette fonction est spécifiquement destinée à la conversion de décimal en octal. Sa syntaxe ressemble à ceci :

OCT(N)

N est le nombre décimal que vous souhaitez convertir en octal.

Voici un exemple :

SELECT OCT(8);

Résultat :

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

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

La fonction CONV()

Il s'agit d'une fonction plus générale qui vous permet de spécifier, non seulement le système de numérotation pour convertir en , mais aussi le système de numérotation pour convertir de .

Syntaxe :

CONV(N,from_base,to_base)

N est le nombre à convertir, from_base est la base à partir de laquelle convertir, et to_base est la base vers laquelle convertir.

Nous pouvons donc réécrire l'exemple précédent :

SELECT CONV(8, 10, 8);

Résultat :

+----------------+
| CONV(8, 10, 8) |
+----------------+
| 10             |
+----------------+

Et nous obtenons le même résultat car nous convertissons le nombre de base 10 en base 8.

Un avantage de la CONV() fonction est que vous pouvez convertir entre d'autres bases. Par exemple, nous aurions pu tout aussi facilement passer de la base 8 à la base 16.

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