SQL comment sélectionné ...

Bonjour, j'ai deux tables 'PERSONNE' avec 2 colonnes 'ID' et 'NOM', 'VALIDER' avec 2 colonnes 'ID' et 'VALIDER', les ID sont en commun, je voudrai sélectionner tout les ID de PERSONNE qui ne sont pas dans la table 'VALIDER', voila débutant en sql je ne trouve pas la solution sur internet, merci.

ps: c'est un exemple, je sais très bien que mettre VALIDER dans la table PERSONNE aurait était plus simple ;)
Configuration: Windows XP
Firefox 3.0.10

3 réponses

  1. bonjour, un truc comme ca devrait marcher :

    select a.ID from PERSONNE a where 0=(select count(*) from VALIDER b where b.ID=a.ID)
    1. Beaucoup plus simple oui !
      Un petit booléen "oui/non" dans la table personne aurait suffit = )

      SELECT id from personne where valider ="non";

      Enfin bon ... = )
      1. je comprend pas trop les a et b si tu pouvais m'expliquer, merci :)
        1. Très simple :
          SELECT id FROM Personne WHERE id NOT IN (SELECT id FROM Valider);