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
    Pensez au tag !!!

  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
    Pensez au tag !!!

  5. #5
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    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 080
    Points : 30 803
    Points
    30 803
    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.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

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