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

WinDev Discussion :

SQL jointures sur HF [WD15]


Sujet :

WinDev

  1. #1
    R&B
    R&B est déconnecté
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Mars 2005
    Messages : 571
    Points : 1 263
    Points
    1 263
    Par défaut SQL jointures sur HF
    Bonjour

    j'ai deux fichiers A et B reliés par une rubrique CODE
    Je n'ai pas trouvé quelle jointure mettre en place pour trouver les enregistrement de B qui n'ont pas de CODE en liaison avec A ?

    En effet, les FULL/RIGH/LEFT OUTER JOIN ne semble fonctionner qu'à partir des lignes communes, c'est précisément l'inverse qu'il me faut... j'ai du rater quelque chose.
    le but est de corriger une défaillance de la relation et donc dans un premier temps d'identifier les lignes.

    Merci de vos Pistes

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 79
    Points : 84
    Points
    84
    Par défaut
    Salut,
    En mode graphique lorsque tu met en place ta jointure en dessous des rubrique que tu sélectionne tu peux paramétrer ce genre de spécification.

  3. #3
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 244
    Points : 12 878
    Points
    12 878
    Par défaut
    Bonjour,
    Si tu ne veux que les lignes de B qui n'ont pas d'équivalent dans A, c'est facile en SQL:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select * fom B
    left outer join A on b.code = A.code
    where A.code is null

    Par contre je ne sais pas faire avec l'éditeur de Windev, vu que je ne l'utilise pas.

    Tatayo.

  4. #4
    R&B
    R&B est déconnecté
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Mars 2005
    Messages : 571
    Points : 1 263
    Points
    1 263
    Par défaut
    Grand merci à tous.
    la solution a donné le résultat escompté et qui plus est les sélections dans l'interface étaient bien celle décrites

  5. #5
    Membre expert
    Avatar de Emmanuel Lecoester
    Profil pro
    Inscrit en
    Février 2003
    Messages
    1 493
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2003
    Messages : 1 493
    Points : 3 266
    Points
    3 266
    Par défaut
    autres possibilités juste pour le fun car la solution présentée et la plus rapide à mon sens :

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * from B where not exists (select 1 from A where b.code = A.code)
    -
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * from B where code in (select b.code from B minus select a.code from A)

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

Discussions similaires

  1. Requête SQL : Jointure sur 3 tables - Bd Access 1997 & Delphi 7
    Par Didier100 dans le forum Bases de données
    Réponses: 2
    Dernier message: 28/12/2007, 09h57
  2. SQL : Jointure droite sur plusieurs champs
    Par Platon93 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 19/12/2006, 13h55
  3. Réponses: 16
    Dernier message: 14/04/2006, 18h38
  4. Réponses: 5
    Dernier message: 06/09/2005, 16h01
  5. Débutant SQL, problème sur une jointure censée exclure ??
    Par derfatypik dans le forum Langage SQL
    Réponses: 8
    Dernier message: 22/06/2005, 15h55

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