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 :

Requête avec exclusion de colonnes


Sujet :

Langage SQL

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2005
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 17
    Points : 14
    Points
    14
    Par défaut Requête avec exclusion de colonnes
    Bonjour,

    je souhaiterais savoir s'il est possible de faire en SQL un "select" en indiquant les colonnes à exclure du résultat.

    En effet, j'ai besoin de sélectionner la majorité des colonnes d'une table sauf certaines ... l'idée c'est que si j'ajoute une colonne à ma table, la requête me la renvoie, je n'ai pas besoin d'y retoucher.

    Merci d'avance que ce soit possible ... ou non

  2. #2
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 142
    Points : 185
    Points
    185
    Par défaut
    Malheureusement je ne pense pas que cela soit possible...
    Soit tu sélectionnes toutes les colonnes de ta table avec le fameux SELECT *, soit tu énumères explicitement le nom des colonnes que tu veux requêter. Je n'ai jamais vu d'autres syntaxes, désolé !

  3. #3
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 039
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 039
    Points : 23 787
    Points
    23 787
    Par défaut
    C'est une question qui revient souvent... On ne peut pas exclure des champs, et utiliser l'étoile, c'est pas bien .
    Ci-joint un lien vers un post récent sur le sujet : ici

    ced

  4. #4
    Membre à l'essai
    Inscrit en
    Février 2005
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 17
    Points : 14
    Points
    14
    Par défaut
    Ok merci, je la passe en résolu "non résolvable"

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Points : 382
    Points
    382
    Par défaut
    Si tu utilise la majorité des colonnes, met SELECT * sans exploiter les colonnes qui t'interesse pas.

  6. #6
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 039
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 039
    Points : 23 787
    Points
    23 787
    Par défaut
    C'est pas bien le "*"... On ne sait pas quelles colonnes sont sélectionnées, et si le schéma évolue, ça peut faire planter le programmation derrière... C'est plus dur à maintenir pour ceux qui passent derrière.
    Et puis ça ne fait que déporter le problème des colonnes à conserver vers la programmation.
    Je te conseille plutôt d'écrire les colonnes dès la requête...

    ced

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Points : 382
    Points
    382
    Par défaut
    Dans son cas, il peux aussi utiliser une vue qui contiendrais ses colonnes

  8. #8
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 109
    Points : 28 437
    Points
    28 437
    Par défaut
    Citation Envoyé par Eric93 Voir le message
    Si tu utilise la majorité des colonnes, met SELECT * sans exploiter les colonnes qui t'interesse pas.
    Il ne faut pas négliger le volume des données qui est transféré.
    Si tu as besoin de seulement 3 colonnes numériques et que tu rapatries en plus une dizaine de colonnes CHAR(100) que tu n'utiliseras pas, je ne suis pas sur que les performances seront au rendez-vous.

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Points : 382
    Points
    382
    Par défaut
    Il disait qu'il avait besoin de la quasi totalité de ses colonne sauf quelques unes, dou sa question pour les exclure

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

Discussions similaires

  1. [MySQL] requête avec exclusion
    Par nicomax34 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 23/09/2011, 18h40
  2. Rapidité requête avec where ou colonne additionnelle
    Par Marc_L dans le forum Développement
    Réponses: 15
    Dernier message: 24/05/2011, 19h38
  3. Requête avec exclusion
    Par bpollet dans le forum Langage SQL
    Réponses: 4
    Dernier message: 16/05/2011, 17h18
  4. Requête avec nom de colonne intégrant une variable
    Par pentoneal dans le forum PL/SQL
    Réponses: 6
    Dernier message: 19/10/2009, 14h48
  5. Requête avec exclusion
    Par illegalsene dans le forum Langage SQL
    Réponses: 5
    Dernier message: 01/02/2006, 11h07

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