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 :

Transformation de jointure =(+) en OUTER JOIN


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 109
    Par défaut Transformation de jointure =(+) en OUTER JOIN
    Bonjour,

    j'ai le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    SELECT	F.NUM_FPA, F.COD_ETA_FPA, C.NUM_CLI, EE.LIB_ETA_ECH,
    	F.COD_NAT_CPT, TF.LIB_TYP_FPA, EF.LIB_ETA_FPA, E.COD_ETA_ECH,
    	F.COD_ITV_CRE, I1.NOM_ITV, F.COD_ITV_ANU,
    	I2.NOM_ITV, F.COD_MTF, M.LIB_MTF
    FROM	FPA F, ECH E, FAC_CLI_FPA FCF, CPT_CLI C, TYP_FPA TF, 
               ETA_FPA EF, ITV I1, ITV I2, MTF M, ETA_ECH EE, CAR_ITV CI
    WHERE	F.NUM_FPA = E.NUM_FPA
    AND	F.NUM_FPA = FCF.NUM_FPA
    AND	FCF.NUM_CPT_CLI = C.NUM_CPT_CLI
    AND	F.COD_TYP_FPA   = TF.COD_TYP_FPA
    AND	F.COD_ETA_FPA   = EF.COD_ETA_FPA
    AND	F.COD_ITV_CRE   = I1.COD_ITV
    AND	F.COD_ITV_ANU   = I2.COD_ITV(+)
    AND	I1.COD_ITV	= CI.COD_ITV(+)
    AND	F.COD_MTF	= M.COD_MTF(+)
    AND	E.COD_ETA_ECH	= EE.COD_ETA_ECH
    AND 	autres_conditions ...
    Est -il correct de le transformer comme suit ??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    SELECT	F.NUM_FPA, F.COD_ETA_FPA, C.NUM_CLI, EE.LIB_ETA_ECH,
    	F.COD_NAT_CPT, TF.LIB_TYP_FPA, EF.LIB_ETA_FPA, E.COD_ETA_ECH,
    	F.COD_ITV_CRE, I1.NOM_ITV, F.COD_ITV_ANU,
    	I2.NOM_ITV, F.COD_MTF, M.LIB_MTF
    FROM	FPA F
    INNER JOIN ECH E ON F.NUM_FPA = E.NUM_FPA
    INNER JOIN FAC_CLI_FPA FCF ON F.NUM_FPA = FCF.NUM_FPA
    INNER JOIN CPT_CLI C ON FCF.NUM_CPT_CLI = C.NUM_CPT_CLI
    INNER JOIN TYP_FPA TF ON F.COD_TYP_FPA = TF.COD_TYP_FPA
    INNER JOIN ETA_FPA EF ON F.COD_ETA_FPA = EF.COD_ETA_FPA
    INNER JOIN ITV I1 ON F.COD_ITV_CRE = I1.COD_ITV
    LEFT OUTER JOIN ITV I2 ON F.COD_ITV_ANU = I2.COD_ITV
    LEFT OUTER JOIN MTF M ON F.COD_MTF = M.COD_MTF
    INNER JOIN ETA_ECH EE ON E.COD_ETA_ECH = EE.COD_ETA_ECH
    LEFT OUTER JOIN CAR_ITV CI ON I1.COD_ITV = CI.COD_ITV	
    WHERE	autres_conditions ...
    C'est plus précisément la partie en gras dont je ne suis pas vraiment sûr
    Merci pour vos réponses

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    ça semble correct mais pourquoi ne pas tester tout simplement

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 109
    Par défaut
    j'ai pas encore accès aux bases de tests

Discussions similaires

  1. Jointure left outer join incomplète
    Par nicoaix dans le forum Requêtes
    Réponses: 2
    Dernier message: 24/09/2012, 17h18
  2. [AC-2003] Probleme jointure left outer join
    Par Ardiden31 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 11/04/2012, 08h47
  3. [MySQL] Requête & Jointure LEFT OUTER JOIN
    Par MatthieuQ dans le forum Langage SQL
    Réponses: 4
    Dernier message: 19/03/2012, 14h22
  4. Jointure full outer join
    Par opensource dans le forum Langage SQL
    Réponses: 15
    Dernier message: 07/09/2008, 17h28
  5. Jointure LEFT OUTER JOIN , aide demandée :)
    Par fraginfo dans le forum Requêtes
    Réponses: 3
    Dernier message: 24/10/2006, 11h02

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