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

Langage SQL Discussion :

[debutant] suppression d'imbrication


Sujet :

Langage SQL

  1. #1
    Membre habitué Avatar de dor_boucle
    Inscrit en
    Juin 2003
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 147
    Points : 136
    Points
    136
    Par défaut [debutant] suppression d'imbrication
    Bonjour
    Voilà ma requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT * 
    FROM table1 t1
    WHERE t1champ1 =truc
    AND t1.id NOT IN (SELECT t2.id
                      FROM table t2)
    et j'aimerai la passer sans imbrication (passage d'acces à mysql en fait) et j'aurai vraiment pas envie de faire du code php pour traiter les resultats de cette requete...
    ca doit etre possible non ?
    J'ai l'impression d'engager un combat sans précédent avec la nature. Je vais bien, le moral est bon, je poursuis le vol. (Youri Gagarine)

  2. #2
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Points : 2 227
    Points
    2 227
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT t1.*
    FROM table1 t1 LEFT OUTER JOIN table2 t2 ON t1.id = t2.id
    WHERE t2.id IS NULL
    pas testé, mais devrait marcher.
    J'affirme péremptoirement que toute affirmation péremptoire est fausse
    5ième élément : barde-prince des figures de style, duc de la synecdoque
    Je ne réponds jamais aux questions techniques par MP

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    332
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2002
    Messages : 332
    Points : 502
    Points
    502
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT T1.*
    FROM maTable1 T1
      LEFT JOIN maTable T2 ON T1.ID = T2.ID
    WHERE T2.ID IS NULL
    AND T1.Champ1 = 'Valeur'

  4. #4
    Membre habitué Avatar de dor_boucle
    Inscrit en
    Juin 2003
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 147
    Points : 136
    Points
    136
    Par défaut
    euh je crois que les jointures externes sont pas supportées par mysql ...
    autrement sans imbrication et sans jointure externe? (oui suis embetante je sais, mille excuses)
    J'ai l'impression d'engager un combat sans précédent avec la nature. Je vais bien, le moral est bon, je poursuis le vol. (Youri Gagarine)

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT *
    FROM Table1 INNER JOIN Table2 ON T1.id = T2.id 
    WHERE Table2.id Is Not Null
    ds ce style :p

  6. #6
    Membre habitué Avatar de dor_boucle
    Inscrit en
    Juin 2003
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 147
    Points : 136
    Points
    136
    Par défaut
    ds ce style :p
    hmm ouais on s'approche, mais le but c'est de relier deux table, mais par les ellements qu'elles n'ont PAS en commun...
    or la jointure avec un <> au milieu, ca n'a pas l'air de marcher...

    ensuite si je fais un
    select * from table1 t1, table2 t2
    where t1.id<>t2.id ca ne marche pas si l'une des table est vide.

    en fait je voudrais avoir la soustration de deux resultats :
    SELECT nom, prénom
    FROM Table1
    EXCEPT
    SELECT nom, prénom
    FROM Table2;

    c'est exactement ca dont j'ai besoin, mais comment l'ecrire sans deux requetes ?
    je vais poster ce message aussi dans le forum mysql sont p'etre plus habitué
    J'ai l'impression d'engager un combat sans précédent avec la nature. Je vais bien, le moral est bon, je poursuis le vol. (Youri Gagarine)

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    332
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2002
    Messages : 332
    Points : 502
    Points
    502
    Par défaut
    Il y a des BD qui ne gerent pas les OUTER JOIN??!?!!?

  8. #8
    Membre habitué Avatar de dor_boucle
    Inscrit en
    Juin 2003
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 147
    Points : 136
    Points
    136
    Par défaut
    la solution en outer join fonctionne !!
    evidemment c'est la dernière que je teste.
    sinon j'ai trouvé ca pour les equivalences http://sqlpro.developpez.com/SQL_AZ_4.htm
    J'ai l'impression d'engager un combat sans précédent avec la nature. Je vais bien, le moral est bon, je poursuis le vol. (Youri Gagarine)

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

Discussions similaires

  1. [debutant] suppression des doublons absolus
    Par Auteur dans le forum Langage SQL
    Réponses: 9
    Dernier message: 19/10/2007, 09h26
  2. [très débutant] suppression enregistrement
    Par belzeluc dans le forum Access
    Réponses: 2
    Dernier message: 06/06/2006, 22h45
  3. [debutant]suppression en cascade
    Par christophebmx dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 03/05/2005, 09h51
  4. [Debutant]Suppression dans des tables avec contraintes
    Par Roming22 dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 26/10/2004, 17h23
  5. suppression d'imbrication
    Par dor_boucle dans le forum Requêtes
    Réponses: 2
    Dernier message: 18/07/2004, 11h30

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