banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#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 smile

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 smile

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

 

Pied de page des forums

Powered by FluxBB