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

Designer Discussion :

Jointure complex avec condition 'IF'


Sujet :

Designer

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 84
    Par défaut Jointure complex avec condition 'IF'
    Bonjour,

    débutant dans la création d'univers (mon 1er pour être exact) j'ai une question sur les possibilités de jointure complexe.

    Est t'il possible d'intégrer un 'if' dans l'expression d'une jointure?
    ex :
    TAB1.NOM = (if TAB2.NOM_MARITAL="" then TAB2.NOM else TAB2.NOM_MARITAL)

    La raison : permettre le 'rapprochement' entre 2 tables 'client' de sources différentes. donc sans clés communes et avec un système d'enregistrement de nom différente.
    TAB1 contiens les champs NOM & NOM_MARITAL
    TAB2 contiens les champs NOM & NOM_JEUNE_FILLE.

    Merci d'avance pour votre aide.

  2. #2
    Rédacteur
    Avatar de TomDuBouchon
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juin 2009
    Messages
    3 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 343
    Par défaut
    Bonjour,

    Problème épineux, car tu as en tout 4 cas possibles... Et on ne peut pas, à ma connaissance, mettre de condition en jointure.
    Je pense que le mieux est de créer un table dérivée à partir d'une de tes deux tables afin qu'elles soient toutes les deux sous le même format.

    Est-ce que tu as une donnée "Sexe" ?

    EDIT : Sur quel SGBDR travailles-tu ?
    Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
    Un message vous a aidé ? Votez en cliquant sur
    Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 84
    Par défaut
    C'est clair c'est épineux.

    je travail via oracle et je n'ai pas l'info sur le sexe du client.
    J'ai juste le contenu du champs NOM_MARITAL (vide au non).

    De plus, Je viens de me rendre compte que sur TAB2 le champs NOM_JEUNE_FILLE (disponible sur la base en prod) n'est pas récupéré dans mon entrepôt de données.

  4. #4
    Rédacteur
    Avatar de TomDuBouchon
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juin 2009
    Messages
    3 343
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 343
    Par défaut
    OK, puisque tu n'as pas le nom de jeune fille, on va donc se focaliser sur le nom "actuel". (C'est plus simple du coup)

    Je disais donc, il faut créer dans l'univers une table dérivée avec le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT
    decode(TAB1.NOM_MARITAL,null,TAB1.NOM,TAB1.NOM_MARITAL) As NOM,
    etc... (les autres champs de TAB1 que tu veux ramener)
    FROM TAB1
    Il ne te reste plus qu'à faire ta jointure sur NOM entre ta table dérivée et TAB2.
    Pensez à consulter les FAQs BI, les Tutoriels BI et à effectuer des Recherches.
    Un message vous a aidé ? Votez en cliquant sur
    Votre problème est résolu ? Merci de l'indiquer en cliquant sur le bouton

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 84
    Par défaut
    Merci pour l'information.

    je vais tester tous ça.

Discussions similaires

  1. Jointure SQL avec conditions
    Par Olive2011 dans le forum SAS Base
    Réponses: 20
    Dernier message: 01/03/2013, 19h58
  2. Jointure externe avec condition
    Par laymo dans le forum SQL
    Réponses: 2
    Dernier message: 21/08/2012, 14h00
  3. Réponses: 5
    Dernier message: 26/08/2011, 10h05
  4. [AC-2007] Conception d'une base de controle complexe avec conditions
    Par Edios51 dans le forum Modélisation
    Réponses: 2
    Dernier message: 29/06/2010, 17h30

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