Bonjour à tous,
Je ne connais pratiquement pas le SQL, je suis un débutant complet. Je vous soumets mon problème car après quelques essais infructueux, je craque.
Voici tout d'abord le format simplifié de mes tables :
T_INDIVIDU possède entre autres les colonnes i_id, i_name, i_surname
T_EVENT possède entre autres les colonnes d_gid (= i_id), d_year, d_fact (type d'évènement, DEAT pour décès, BIRT pour naissance)
J'aimerais lancer une requête pour disposer de 5 colonnes i_id, i_name, i_surname, i_yearb (année de naissance), i_yeard (année de décès).
J'ai commencé par créer deux vues pour avoir la liste des années de décès et de naissance (c'est une base de généalogie). Il n'y a pas forcément d'évènements associés à un individu.
Ensuite, c'est là que je coince. Je n'arrive pas à faire une UNION correcte entre les tables pour avoir tous mes individus. Je ne sais pas comment faire pour avoir les individus qui n'ont pas d'évènements associés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 CREATE VIEW NAISSANCE (i_id, i_yearb) AS SELECT d_gid, d_year FROM T_DATE WHERE d_fact = 'BIRT'; CREATE VIEW DECES (i_id, i_yeard) AS SELECT d_gid, d_year FROM T_EVENT WHERE d_fact = 'DEAT';
Nul doute que c'est un exercice très facile pour un 'geek' du SQL, j'attends donc vos très nombreuses réponses Merci pour votre attention.
Cordialement,
Jean-Pierre
Partager