Annonce
Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !
10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …
Retrouver nos membres bienfaiteurs
#1 Wed 17 April 2024 12:02
- triird
- Participant occasionnel
- Date d'inscription: 13 Jan 2022
- Messages: 18
POSTGIS - Compiler des données dans une vue
Bonjour,
Je cherche à compiler des données de plusieurs tables en une seule, dans une vue :
- Chaque tables représentent une année,"2024_com", "2023_com", etc.
- Les tables contiennent des colonnes identiques "nom_commune", "population", etc.
=> Les valeurs de certaines colonnes sont amenées à être modifiées au fur et à mesure du temps, d'où la volonté de réaliser une vue.
(le but à la fin est de réaliser des statistiques dans Power BI)
J'ai essayé plusieurs choses qui ne fonctionne pas, dont j'en liste certaine ci-dessous
Sous PG admin 4 => créer une vue :
INSERT INTO service_eau_potable."2022_com"
SELECT * FROM service_eau_potable."2023_com";
-----
CREATE TABLE service_eau_potable.vue_commune(
insee_com character varying(5),
insee_dep character varying(5),
insee_reg character varying(5),
surface_ha integer,
adhere_lib character varying(200),
adhere_ref character varying(200),
prix double precision,
com_histo text,
epci_lib text,
pop bigint,
annee integer
);
INSERT INTO vue_commune
SELECT * FROM service_eau_potable."2023_com"
Je sais qu'il est possible de réaliser des jointures facilement, mais est-il possible de compiler des données dans une vue ?
Je m'en remets à votre aide
Merci
Théo
Hors ligne
#2 Wed 17 April 2024 12:11
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: POSTGIS - Compiler des données dans une vue
Bonjour,
Je pense que vous mélangez la notion de vue et table en SQL.
Une vue en SQL est juste une requête enregistrée, rejouée chaque fois qu'un select est fait sur la vue.
Une vue se crée avec
Code:
create view mavue as select ... from ... ;
Un des principes des vues est de ne pas dupliquer les données (comme vous le faite en insérant des données 2023 dans une table 2022.)
Vous pouvez créer une vue représentant le contenu de plusieurs tables en faisant:
create view all_year_com as
select * from 2022_com UNION ALL
select * from 2023_com UNION ALL
select * from 2024_com ... ;
Nicolas
Dernière modification par Nicolas Ribot (Wed 17 April 2024 12:12)
Hors ligne
#3 Wed 17 April 2024 12:16
- triird
- Participant occasionnel
- Date d'inscription: 13 Jan 2022
- Messages: 18
Re: POSTGIS - Compiler des données dans une vue
Bonjour,
Merci pour votre réponse très rapide,
Oui bien sûr, j'essayais juste dans la première de créer une table depuis une vue, mais ça ne fonctionnait pas.
ça marche parfaitement avec UNION ALL que je ne connaissais pas
Merci encore
Théo
Hors ligne
#4 Fri 10 May 2024 14:04
- Biles
- Juste Inscrit !
- Date d'inscription: 9 May 2024
- Messages: 1
Re: POSTGIS - Compiler des données dans une vue
Bonjour,
Créer une vue pour représenter le contenu de plusieurs tables est une pratique efficace pour éviter la duplication des données, comme vous l'avez souligné. Cela permet de maintenir la cohérence et la précision des informations, tout en facilitant les opérations de consultation et d'analyse. En intégrant toutes les années nécessaires dans une seule vue, vous optimisez la gestion et l'accès aux données, ce qui est crucial dans tout système d'information.
Hors ligne