Dans ce guide, nous travaillerons sur l'intervalle dans PostgreSQL.
Conditions préalables:
Pour effectuer les étapes qui sont démontrées dans ce guide, vous aurez besoin des composants suivants:
Intervalle dans PostgreSQL
Pour stocker et gérer les périodes (minutes, secondes, années, etc.), PostgreSQL offre le type de données d'intervalle.
Le type d'intervalle est le suivant:
$ @ intervalle
Ici:
Formats d'intervalle
postgres_verbose
$
Où:
Ceci est le format postgres_verbose qui est courant pour les formats de sortie d'intervalle.
ISO 8601
La structure du format ISO 8601 avec les désignateurs est la suivante:
$ PT
Ici:
Les abréviations unitaires suivantes sont disponibles dans ISO 8601:
Voici un exemple d'intervalle au format ISO 8601 (avec des concepteurs):
$ P5Y4M3DT2H1M2S
Il y a un alternative de format d'ISO 8601. La structure est la suivante:
$ PT
Voici le même exemple d'intervalle au format alternatif ISO 8601:
$ P0005-04-03T02: 01: 02
En utilisant les valeurs d'intervalle
Dans cette section, nous démontrerons les différentes façons d'utiliser les valeurs d'intervalle dans les requêtes PostgreSQL.
Utilisation de base
Dans le shell PostgreSQL, exécutez la requête suivante:
SÉLECTIONNER
Maintenant (), maintenant () - intervalle '1 an 3 heures 20 minutes'
Comme "3 heures il y a 20 minutes de l'année dernière";
Ici:
Formats de sortie d'intervalle
Dans PostgreSQL, nous pouvons spécifier le format de sortie d'une valeur d'intervalle en utilisant la commande suivante:
$ Set interalstyle = '';
Il y a quelques formats disponibles:
Mettons cette commande en action. Les requêtes suivantes montrent la sortie d'intervalle dans différents formats:
Set interalstyle = 'sql_standard';
Sélectionner l'intervalle «5 ans 4 mois 3 jours 2 heures 1 minutes 2 secondes»;
Définir IntercalStyle = 'Postgres';
Sélectionner l'intervalle «5 ans 4 mois 3 jours 2 heures 1 minutes 2 secondes»;
Set interalstyle = 'postgres_verbose';
Sélectionner l'intervalle «5 ans 4 mois 3 jours 2 heures 1 minutes 2 secondes»;
Set interalstyle = 'ISO_8601';
Sélectionner l'intervalle «5 ans 4 mois 3 jours 2 heures 1 minutes 2 secondes»;
Opérateurs arithmétiques intervalles
Il est possible d'appliquer les opérations arithmétiques (+, -, *) sur les valeurs d'intervalle. Les requêtes suivantes montrent cette fonctionnalité:
SÉLECTIONNER
Intervalle '3h 50m' + intervalle '10m';
SÉLECTIONNER
Intervalle '9h 50m' - intervalle '50m';
SÉLECTIONNER
3600 * intervalle «1 minute»;
Conversion d'intervalle en chaîne
À l'aide de la fonction TO_CHAR (), nous pouvons convertir la valeur de l'intervalle en une chaîne. La structure de TO_CHAR () est la suivante:
$ To_char (, ));
Ici:
La requête suivante montre un exemple simple de conversion d'un intervalle au format ISO 8601 en une simple chaîne:
SÉLECTIONNER
To_char (
Interval 'P0005-04-03T02: 01: 02',
'HH24: MI: SS'
));
Extraction de données à partir d'intervalle
À l'aide de la fonction extrait (), nous pouvons extraire le contenu d'un champ spécifique à partir d'une valeur d'intervalle. La structure de commande d'extrait () en tandem avec intervalle est la suivante:
$ Extrait (DEPUIS ));
Ici:
Mettons la fonction extrait () en action. Dans l'exemple suivant, nous extraissons le champ minute d'une valeur d'intervalle:
SÉLECTIONNER
EXTRAIT (
MINUTE
DEPUIS
Interval 'P0005-04-03T02: 01: 02'
Ajustement de la valeur d'intervalle
Les fonctions Justify_days () et Justify_Hours () peuvent convertir les intervalles de 30 jours en 1 mois et 24 heures à 1 jour, respectivement.
La requête suivante montre l'utilisation de ces fonctions:
SÉLECTIONNER
Justify_Days (Interval '90 Days '),
Justify_Hours (Interval '72 Hours ');
Conclusion
Nous avons passé en revue la fonction d'intervalle dans PostgreSQL. Ce guide élabore sur divers formats d'intervalle pris en charge. Il présente également les différentes façons de mettre en œuvre l'intervalle dans les requêtes. Enfin, nous avons également exploré les différentes fonctions postgresql qui traduisent / transforment la valeur d'intervalle dans les formats spécifiés.
Besoin d'interagir avec PostgreSQL sur un réseau? Il existe diverses GUIS postgresql disponibles qui peuvent se connecter à un serveur distant et le gérer sans effort. Outre les fonctions intégrées, PostgreSQL prend également en charge les fonctions définies par l'utilisateur.