IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

regrouper par famille pere-fils


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 13
    Points : 12
    Points
    12
    Par défaut regrouper par famille pere-fils
    Bonjour,

    Je travaille sur des nomenclatures en pyramide qui utilisent des liens pere-fils.
    J'aimerais affecter un paramètre identique a l'ensemble des composants de la pyramide. Un exemple sera plus parlant :

    Voici la table sur laquelle je travaille :

    3 colonnes

    [Id pere] [Id fils] [Nom]
    [ 1 ] [ 2 ] [ Bla ]
    [ 1 ] [ 3 ] [ Ble ]
    [ 2 ] [ 4 ] [ Bli ]
    [ 3 ] [ ] [ Blo ]
    [ 4 ] [ ] [ Blu ]

    Je voudrais insérer une colonne, qui regroupe le lien pere-fils en une famille qui possède le nom du père principal (pour l'exemple "1")

    [Id famille] [Id pere] [Id fils] [Nom]
    [ 1 ][ 1 ] [ 2 ] [ Bla ]
    [ 1 ][ 1 ] [ 3 ] [ Ble ]
    [ 1 ][ 2 ] [ 4 ] [ Bli ]
    [ 1 ][ 3 ] [ ] [ Blo ]
    [ 1 ][ 4 ] [ ] [ Blu ]

    Actuellement j'obtient le résultat suivant :

    [Id famille] [Id pere] [Id fils] [Nom]
    [ 1 ][ 1 ] [ 2 ] [ Bla ]
    [ ][ 1 ] [ 3 ] [ Ble ]
    [ ][ 2 ] [ 4 ] [ Bli ]
    [ ][ 3 ] [ ] [ Blo ]
    [ ][ 4 ] [ ] [ Blu ]


    Quelle serait la syntaxe la plus judicieuse à employer pour arriver a ce résultat?

    Je vous remercie d'avance

    Frandis

  2. #2
    Membre éprouvé Avatar de Mathusalem
    Profil pro
    IT moa
    Inscrit en
    Décembre 2003
    Messages
    1 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : IT moa

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 008
    Points : 1 067
    Points
    1 067
    Par défaut
    En gros tu voudrais pouvoir déduire les liens de parentés de manière récursive ?

    On dirait le genre de pb classique que l'on étudie en Prolog.

  3. #3
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 13
    Points : 12
    Points
    12
    Par défaut
    Oui ca doit être ça!

    Je sais pas trop...

    Il faudrait que j'utilise quelle clause?

  4. #4
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 13
    Points : 12
    Points
    12
    Par défaut
    Bonjour, est-ce qu'avec order by root et order by prior, j'aurais une chance d'avoir le résultat que j'attends?

  5. #5
    Membre à l'essai
    Inscrit en
    Décembre 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 13
    Points : 12
    Points
    12
    Par défaut
    En utilsant connect_by_root et connect by prior, ca marche.

    Le probleme que j'avais c'etait que ma table avait un lien pere-fils.
    Il a donc fallu que je la passe en fils-pere avec l'élément du plus haut niveau qui avait un père = 0.

    L'autre probleme c'était que certains élements etaient simples, ils avaient donc un fils NULL. (Résolu avec un NVL( ,0) AS )

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Requête] Regroupement par mois en cours
    Par Burnout dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 09/01/2006, 09h36
  2. modeliser relation pere fil
    Par flawer dans le forum Débuter
    Réponses: 20
    Dernier message: 12/12/2005, 11h59
  3. Réponses: 5
    Dernier message: 29/09/2004, 11h05
  4. [DB2]Requête regroupement par intervals
    Par sm dans le forum DB2
    Réponses: 8
    Dernier message: 01/09/2004, 17h19
  5. Regroupement par mois
    Par fplanglois dans le forum SQL
    Réponses: 7
    Dernier message: 29/07/2003, 16h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo