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 :

Renommer les colonnes avec un "UNION ALL"


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Inscrit en
    Août 2006
    Messages
    307
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Août 2006
    Messages : 307
    Points : 114
    Points
    114
    Par défaut Renommer les colonnes avec un "UNION ALL"
    Salut a tous,

    Une petite question :
    Je travaille sur un document MS Excel avec MS Query et je souhaite renommer les colonnes dans une requete SQL. Ca fonctionne tres bien lorsque je n'ai pas de UNION ALL...

    Est ce normal ?
    Est ce que qq'un a deja eu ce souci ?

    Merci d'avance...

    Mario

  2. #2
    Membre confirmé
    Avatar de Petogaz
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    479
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 479
    Points : 580
    Points
    580
    Par défaut
    salut,

    je ne vois pas pourquoi tu veux rennomer tes colonnes avec un UNION ALL.
    il nous manque des infos. peux tu nous poster un exemple de table avec un résultat souhaité et nous mettre ta requête SQL ?

  3. #3
    Membre éprouvé Avatar de Mathusalem
    Profil pro
    IT moa
    Inscrit en
    Décembre 2003
    Messages
    1 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : IT moa

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 008
    Points : 1 067
    Points
    1 067
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    select 
    truc as col1,
    truc2 as col2
    from (
    select truc,truc2
    union all
    select truc,truc2
    )

  4. #4
    Membre régulier
    Inscrit en
    Août 2006
    Messages
    307
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Août 2006
    Messages : 307
    Points : 114
    Points
    114
    Par défaut
    Citation Envoyé par Petogaz Voir le message
    salut,

    je ne vois pas pourquoi tu veux rennomer tes colonnes avec un UNION ALL.
    il nous manque des infos. peux tu nous poster un exemple de table avec un résultat souhaité et nous mettre ta requête SQL ?
    Voici un exemple TRES simplifié de ma requete dans le but de vous faire comprendre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT 
    Client.ID, Client.Nom, Client.Prenom, 
    Client.Value1, Client.Value2, 
    Value1*Value2 as resultat
    FROM `C:\Documents and Settings\map\Desktop\Test`.Client Client 
    UNION ALL 
    SELECT 
    Client.ID, Client.Nom, Client.Prenom, 
    Client.Value1, Client.Value2, 
    Value1*Value2*0.5 as resultat
    FROM `C:\Documents and Settings\map\Desktop\Test`.Client Client
    Comme je l'ai dit, lors de l'execution sur MS Query, il y a un message :



    Si je continue, la colonne Resultat est automatiquement renommé en "Field5" (et ca ne m'arrange pas du tout...)

    Mathusalem, ta solution ne me convient pas vraiment car j'ai des calculs qui changent entre les differents UNION ALL...
    Par exemple, ici :
    - Value1*Value2 as resultat
    Puis :
    - Value1*Value2*0.5 as resultat

  5. #5
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 099
    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 099
    Points : 28 400
    Points
    28 400
    Par défaut
    Dans une requête UNION, c'est le premier SELECT qui impose les noms de colonne ; renommer les colonnes dans les autres SELECT est inutile.

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/06/2010, 14h02
  2. Remplir les colonnes avec Vista
    Par Yepazix dans le forum Windows Vista
    Réponses: 18
    Dernier message: 23/05/2007, 02h13
  3. Réponses: 11
    Dernier message: 19/11/2006, 12h45
  4. Renommer une colonne avec ALTER TABLE...
    Par David.V dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 01/07/2004, 10h33

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