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

SQL Oracle Discussion :

Subtilité "connect by"


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de magic charly
    Inscrit en
    Février 2006
    Messages
    167
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 167
    Par défaut Subtilité "connect by"
    Bonjour,

    J'ai une petite question existentielle qui me triture l'esprit.
    Dans une requête du type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT ID
    FROM MA_TABLE
    START WITH ID=ID_DEPART
    CONNECT BY PRIOR ID=ID_FATHER
    Comment Oracle détermine t il entre deux éléments frères (cad de même père)
    lequel est traité en premier ?

    merci d'avance,



    Magic

    PS: Config ORACLE 10i

  2. #2
    Rédacteur

    Homme Profil pro
    Développeur et DBA Oracle
    Inscrit en
    Octobre 2006
    Messages
    878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur et DBA Oracle

    Informations forums :
    Inscription : Octobre 2006
    Messages : 878
    Par défaut
    Salut ,

    Les noeuds du meme niveau son des frères s'il y a un sel père.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT level niveau ,ID
    FROM MA_TABLE
    START WITH ID=ID_DEPART
    CONNECT BY PRIOR ID=ID_FATHER
    Remarque
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    CONNECT BY PRIOR ID=ID_FATHER    -----> du père vers ses fils 
    CONNECT BY PRIOR ID_FATHER  = ID -----> du fils vers le père

  3. #3
    Membre confirmé Avatar de magic charly
    Inscrit en
    Février 2006
    Messages
    167
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 167
    Par défaut
    Merci salim. J'avais bien compris ce que sont des frères. Ma question serait plutot de savoir comment Oracle détermine si il trie un frere plutot qu'un autre ?

  4. #4
    Membre confirmé Avatar de magic charly
    Inscrit en
    Février 2006
    Messages
    167
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 167
    Par défaut
    En fait je souhaiterais que les frères soient triés selon un champ précis.

    Quelqu'un aurait il une idée concernant ce soucis ?
    Cela me serait d'un grand secours...

    Merci.

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 6
    Par défaut
    Je suis pas sur de bien comprendre, mais, tu veux uniquement trier les éléments par niveau ?
    Dans ce cas, un order by suffit?

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