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 :

sélectionner des instances par rapport à une liste de valeurs


Sujet :

SQL Oracle

  1. #1
    Membre averti Avatar de awalter1
    Inscrit en
    Août 2004
    Messages
    994
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 994
    Points : 407
    Points
    407
    Par défaut sélectionner des instances par rapport à une liste de valeurs
    Bonjour,
    Soit un table T avec une colonne C, j'ai besoin de sélectionner les instance de T dont la valeur de C appartient à une liste de valeurs. Je peux faire évidemment cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from T where C='v1' or C='v2' or ...
    Mais si il y a une vingtaine de valeurs la requete devient illisible et ingérable. N'y a t'il pas une autre syntaxe possible du genre (là je sais que c'est pas bon):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from T where C in (select 'v1','v2' ... from dual)
    merci

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Tout simplement, IN :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE C IN ('v1', 'v2')
    Il est limité à 255 ou 1000 arguments, je ne m'en souviens plus.

  3. #3
    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
    Citation Envoyé par Waldar Voir le message
    Il est limité à 255 ou 1000 arguments, je ne m'en souviens plus.
    La limite est de 1000 valeurs.

  4. #4
    Rédacteur

    Homme Profil pro
    Développeur et DBA Oracle
    Inscrit en
    Octobre 2006
    Messages
    878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur et DBA Oracle

    Informations forums :
    Inscription : Octobre 2006
    Messages : 878
    Points : 1 197
    Points
    1 197
    Par défaut
    Salut,

    A mon avis, c'est mieux de créer une table (t_val)et tu mets toutes tes valeurs dans cette dernière.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT * FROM T WHERE exists ( select 1 from t_val where t_val.C =T.c)

  5. #5
    Membre averti Avatar de awalter1
    Inscrit en
    Août 2004
    Messages
    994
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 994
    Points : 407
    Points
    407
    Par défaut
    Citation Envoyé par Waldar Voir le message
    Tout simplement, IN :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE C IN ('v1', 'v2')
    Il est limité à 255 ou 1000 arguments, je ne m'en souviens plus.
    Genial, c'est tout simple.
    merci

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

Discussions similaires

  1. [XL-2010] Afficher des données par rapport à une liste de mois
    Par Lepetitlezard51 dans le forum Excel
    Réponses: 5
    Dernier message: 05/12/2014, 23h36
  2. Réponses: 4
    Dernier message: 11/08/2011, 10h46
  3. Réponses: 2
    Dernier message: 20/11/2009, 15h13
  4. Réponses: 4
    Dernier message: 14/05/2009, 14h15
  5. tri par rapport à une liste dans la clause where
    Par umbakrail dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 19/07/2006, 11h32

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