Comment utiliser le type double précision de PostgreSQL

Introduction

Lorsque vous devez stocker des valeurs numériques avec un grand nombre de chiffres décimaux, vous devez vous assurer d’utiliser le type de données approprié pour cette tâche. PostgreSQL fournit le type de données DOUBLE PRECISION pour ce type de données numériques- le type de données offre 8 octets de stockage et peut contenir jusqu’à 15 chiffres décimaux. Dans cet article, nous aborderons le type de données PostgreSQL DOUBLE PRECISION et nous vous montrerons comment utiliser ce type de données dans les requêtes et les opérations d’insertion.

Prérequis

Pour suivre les exemples de ce tutoriel, vous devrez avoir PostgreSQL installé et en cours d’exécution. Vous pouvez utiliser la commande psql -V dans votre terminal pour confirmer que PostgreSQL est installé et afficher son numéro de version. Assurez-vous que votre installation de PostgreSQL fonctionne avant de passer aux DOUBLE PRECISIONexemples de requêtes plus loin dans ce tutoriel.

Ouvrir la console de ligne de commande psql

Commençons par ouvrir le shell interactif de PostgreSQL. Nous utiliserons la commande présentée ci-dessous :

1
sudo -u postgres psql

Cette commande nous fournit les privilèges d’accès du postgres superutilisateur.

Le type PostgreSQL DOUBLE PRECISION

Le type PostgreSQL DOUBLE PRECISION est un type de données numériques ; il est également connu sous le nom alternatif float8. Les valeurs de double précision sont traitées comme des valeurs à virgule flottante dans PostgreSQL. Cela signifie qu’un certain arrondi se produira si vous essayez de stocker une valeur avec « trop » de chiffres décimaux ; par exemple, si vous essayez de stocker le résultat de 2/3, il y aura un certain arrondi lorsque le 15e chiffre sera atteint. Dans la plupart des cas, il n’y a pas de conséquence réelle de cette approximation, mais il peut y avoir des circonstances où une précision absolue est requise et où le type de données NUMERIC est le meilleur choix.

Type de données DESCRIPTION RANGE
Double précision, float, float8 décimale, données numériques à virgule flottante, valeurs entières 15 chiffres décimaux précision

Créer une base de données et une table dans PostgreSQL

Dans cette section, nous allons créer une table a avec un type de données DOUBLE PRECISION. Avant de faire cela, nous devrons créer une base de données dans PostgreSQL. Nous utiliserons la commande présentée ci-dessous :

1
CREATE DATABASE some_db;

NOTE : N’hésitez pas à utiliser le nom de base de données de votre choix.

  • Utilisez la commande \l pour afficher une liste de toutes les bases de données qui existent dans votre cluster de bases de données PostgreSQL.

  • Utilisez la commande \c pour vous connecter à une base de données spécifique.

Une fois que vous avez créé votre base de données, vous pouvez créer une table dans celle-ci.

La syntaxe pour créer une table est présentée ci-dessous :

1
2
3
CREATE TABLE TABLE_NAME(
COL1 + DATA_TYPE + CONSTRAINT ,
COL2 + DATA_TYPE + CONSTRAINT ) ;

Voici l’instruction SQL que nous allons utiliser pour créer notre table :

1
2
3
4
5
6
7
CREATE TABLE demo(
id SERIAL PRIMARY KEY,
str_col VARCHAR(100),
int_col INT NOT NULL,
boolean_col BOOL,
float_col DOUBLE PRECISION
) ;

Pour visualiser les informations de la table, il suffit d’utiliser la commande \d demo;. La sortie de cette commande ressemblera à ceci:

1
2
3
4
5
6
7
8
9
10
Table « public.demo »
Colonne | Type | Collation | Nullable | Défaut
————-+————————+———–+———-+———————————-
id | integer | | not null | nextval(‘demo_id_seq’ ::regclass)
str_col | caractère variable(100) | |
int_col | entier | | non nul |
boolean_col | booléen | | |
float_col | double précision | | |
Index :
« demo_pkey » PRIMARY KEY, btree (id)

Insérer quelques valeurs à l’intérieur de la colonne DOUBLE PRECISION

Nous pouvons utiliser une instruction INSERT pour insérer des données dans notre DOUBLE PRECISIONcolonne ainsi que dans les autres colonnes de la table :

1
2
3
4
INSERT INTO demo (str_col, int_col, boolean_col, float_col)
VALUES(‘ObjectRocket’, 1234, TRUE, 09673143120),
(‘Examples’, 6688, FALSE, 09057046055),
(‘Tutorials’, 9678, TRUE, 09129158355) ;

Pour voir les valeurs dans le float_column, utilisez la simple instruction SELECT présentée ci-dessous :

1
SELECT id, float_col FROM demo;

La sortie ressemblera à ce qui suit :

1
2
3
4
5
id | float_col
—-+————.
1 | 9673143120
2 | 9057046055
3 | 9129158355

Conclusion

Si vous envisagez de stocker des valeurs numériques qui nécessitent une certaine précision ou longueur, le type de données DOUBLE PRECISION peut être le bon choix pour vos besoins. Dans cet article, nous avons fourni une introduction au type PostgreSQL DOUBLE PRECISION et passé en revue quelques exemples d’insertion et de récupération de données de ce type. Grâce à ces exemples qui vous serviront de guide, vous serez prêt à utiliser le type de données DOUBLE PRECISION dans votre propre base de données PostgreSQL.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.