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

DB2 Discussion :

Jointure conditionnelle SQL


Sujet :

DB2

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2017
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Jointure conditionnelle SQL
    Bonjour,
    J'ai besoin de réaliser la requête SQL suivante :
    Je dispose d'un fichier maitre (commandes) et de 2 fichiers adresses. Je veux restituer l'adresse de livraison de la commande avec la contrainte suivante :
    Si elle existe dans le fichier adresse 1, je la restitue, sinon je restitue celle du fichier adresse 2.
    Ma relation entre fichiers est : Maitre à fichier adresse 1 : 0 ou 1 ; Maitre à fichier adresse 2 : toujours 1.
    Merci pour votre aide

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 788
    Points
    30 788
    Par défaut
    Quelque chose dans ce goût là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SELECT  cmd.*
        ,   COALESCE(ad1.adresse, ad2.adresse)  AS adresse
    FROM    commande    AS  cmd
        LEFT JOIN
            adresse1    AS  ad1
            ON  cmd.??? = ad1.???
        INNER JOIN
            adresse2    AS  ad2
            ON  cmd.??? = ad2.???
    ;
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2017
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Cela est presque super !

    il reste un petit problème à résoudre, en effet au final je veux obtenir les zones adresses qui sont nommées pareil dans les 2 fichiers : ex adr1
    j'ai donc besoin d'un SELECT adr1, mais comment l'exprimer ?

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 788
    Points
    30 788
    Par défaut
    Je crois que tu as besoin d'un petit rappel sur les bases du langage SQL, les jointures, les alias, etc.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2017
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2017
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    ... La première réponse était super, ... la deuxième un peu moins bien !
    Si quelqu'un peut m'aider, ce n'est pas parceque je n'ai pas toutes les bases que je ne peux pas m'améliorer !

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Ingénieur d'Etude Mainframe/AS400
    Inscrit en
    Novembre 2012
    Messages
    1 765
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'Etude Mainframe/AS400
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2012
    Messages : 1 765
    Points : 10 748
    Points
    10 748
    Par défaut
    Sauf que là tu ne demandes pas une aide tu demandes la solution clé en main ... Donc lis la doc mentionnée dans le post de al1_24 et après cela on pourra t'aider si tu rencontres des problèmes dans l'exécution de ta requête.

Discussions similaires

  1. Jointure composé SQL 2005
    Par yonialhadeff dans le forum Langage SQL
    Réponses: 1
    Dernier message: 19/01/2007, 23h01
  2. Jointures simples SQL
    Par thibaud28 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 22/12/2006, 23h54
  3. [MySQL] Jointures externes SQL (débutant)
    Par Invité dans le forum Langage SQL
    Réponses: 3
    Dernier message: 21/08/2006, 13h12
  4. Jointure conditionnelle
    Par jgfa9 dans le forum Requêtes
    Réponses: 6
    Dernier message: 03/11/2005, 14h52
  5. Jointures en SQL
    Par Guizz dans le forum Langage SQL
    Réponses: 10
    Dernier message: 04/06/2003, 12h21

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