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

SQL Oracle Discussion :

select from table where in


Sujet :

SQL Oracle

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2009
    Messages : 85
    Points : 62
    Points
    62
    Par défaut select from table where in
    Bonjour,

    J'ai un select qui me fait quelque chose comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select id, addr, addr1 from client
    Minus 
    select id, addr, addr1 from client_etranger
    pour connaître tout les clients qui ne sont pas dans la table client_etranger. Alors comment je peux faire un select * from client_etranger where in le select précédent pour connaître tout les champs de la table client_etranger. Tout cela dans une même requête. J'espère que c'est clair !

    Merci.

  2. #2
    Membre averti Avatar de xdescamp
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 300
    Points : 442
    Points
    442
    Par défaut
    Avec un IN :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    select *
    from client_etranger
    where (id, addr, addr1) in (SELECT id, addr, addr1 FROM client
                                Minus 
                                SELECT id, addr, addr1 FROM client_etranger)

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 51
    Points : 32
    Points
    32
    Par défaut
    Vous pouvez récupérer tous les clients de la table client qui ne sont pas dans la table client_etranger par ce select:

    select *
    from client
    where not exists ( select client_etranger.numero
    from client_etranger
    where client.numero = client_etranger.numero);

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 135
    Points : 164
    Points
    164
    Par défaut
    SELECT *
    FROM client_etranger
    WHERE (id, addr, addr1) IN (SELECT id, addr, addr1 FROM client
    Minus
    SELECT id, addr, addr1 FROM client_etranger)
    Que renvoie cette requête, je n'ai pas compris ce que tu veux obtenir exactement

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2009
    Messages : 85
    Points : 62
    Points
    62
    Par défaut
    Merci c'était exactement ce qu'il fallait xdescamp.

  6. #6
    Membre averti Avatar de mongilotti
    Profil pro
    Inscrit en
    Février 2003
    Messages
    314
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2003
    Messages : 314
    Points : 303
    Points
    303
    Par défaut
    la requête de kamala

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    select *
    from client
    where not exists ( select client_etranger.numero
    from client_etranger
    where client.numero = client_etranger.numero);
    est optimisée car il est conseillé d'utiliser not existe au lieu de not in

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

Discussions similaires

  1. JPA 2.0 Select * from table t where
    Par nouramin dans le forum JPA
    Réponses: 3
    Dernier message: 27/01/2010, 23h41
  2. select id from table where id in ( select * from table2 )
    Par alad1.s dans le forum Langage SQL
    Réponses: 1
    Dernier message: 21/10/2009, 20h20
  3. REQUETE SQL : SELECT * FROM annonce WHERE ..
    Par gregmarty dans le forum Langage SQL
    Réponses: 1
    Dernier message: 03/01/2008, 21h52
  4. Select from table where
    Par kabalonda dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 25/07/2007, 17h43
  5. SELECT * FROM xx WHERE yy AND zz AND tt AND
    Par french-petzouille dans le forum Langage SQL
    Réponses: 3
    Dernier message: 12/03/2007, 09h52

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