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 :

faire l'union de plusieurs colonnes d'une même table


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Par défaut faire l'union de plusieurs colonnes d'une même table
    Bonsoir,
    S'il vous plait, je n'arrive pas a résoudre un problème de requête sql sur access. En fait, j'aimerais faire l'union de plusieurs colonnes d'une table (60 colonnes). Mon problème est que je trouve la requête très longue car j'aimerais utiliser cette requête sur plusieurs autres tables. j'aimerai savoir s'il y a une autre manière de faire cette requête. Merci pour votre pour la réponse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    select pays, var1, *from table
    union all
    select pays, var2, *from table
    union all
    select pays, var3, *from table
    ....
    union all
    select pays, var45, *from table

  2. #2
    Membre éclairé Avatar de Doracle
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2010
    Messages : 60
    Par défaut
    Pouvez vous un peu mieux expliquer la finalité de votre requête, la structure et le contenu de la table ?
    Je ne comprends pas votre requête, ni a quoi correspondent vos variables ...

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Par défaut faire l'union de plusieurs colonnes d'une même table
    Merci Doracle pour ton aide. j'aimerai en fait obtenir un fichier plat:

    fichier initiale exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var1  var2  var3  Var4
    a        b      c     d
    e        f       j     h
    i         g      k    l
    fichier resultat

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    var1    var
    a        b
    e        f
    i         g
    a        c
    e        j      
    i         k
    a        d
    e        h
    i         l
    la requête Sql que j'utilise marche bien mais est très longue car ma table est très grande. or j'aimerai faire cette même requête ( que je considèrerais comme une macro) sur plusieurs autres tables. je la trouve donc trop longue car il faudrait chaque fois que je change de table modifier le nom de la table ainsi que ses variables. et je trouve ca vraiment pénible. Merci

  4. #4
    Membre éclairé Avatar de Doracle
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2010
    Messages : 60
    Par défaut
    D'accord ... vous faites un affichage cumulé d'une première colonne avec toutes les autres tour à tour. Je viens de faire des essais sur ma propre base, j'avoue ne pas trouver d'autres moyens ... Désolé. Mais c'est vrai que ca semble peu optimal ...

    Une solution alternative serait de concaténer les champs. Je ne connais pas la syntaxe pour Access mais elle ne dois pas être si différente de celle que je vous propose :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT var || ' ' || var2, var || ' ' || var3, var || ' ' || var4
    FROM table_name;
    Donc après dans votre fichier plat les données seraient un peu agencées différement, mais je pense que le traitement derrière peut s'adapter facilement, non ?

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Par défaut
    Merci Doracle pour ton aide. j'aimerai en fait obtenir un fichier plat:

    fichier initiale exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    code    robe    12    13    14    15    16
    a         bv    34    24    76    23    67
    d         kj    23    32    87    34    89
    s         er    456    21    65    56    67
    fichier resultat

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    code    robe    nombre
    a          bv    12
    d          kj    12
    s          er    12
    a         bv    13
    d          kj    13
    s          er    13
    a         bv    14
    d         kj    14
    s         er    14
    a        bv    15
    d       kj    15
    s       er    15

    la requête Sql que j'utilise marche bien mais est très longue car ma table est très grande. or j'aimerai faire cette même requête ( que je considèrerais comme une macro) sur plusieurs autres tables. je la trouve donc trop longue car il faudrait chaque fois que je change de table modifier le nom de la table ainsi que ses variables. et je trouve ca vraiment pénible. Merci

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Par défaut faire l'union de plusieurs colonnes d'une même table
    Je viens de tester ta requête mais ca ne marche pas . qu'est ce qui signifie les 2 bars "II" que je vois dans le code?

  7. #7
    Membre éclairé Avatar de Doracle
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2010
    Messages : 60
    Par défaut
    La concaténation de 2 champs, comme je vous disais dans mon précédent message.

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Par défaut faire l'union de plusieurs colonnes d'une même table
    ahh ok. votre requête est une concaténation pourtant moi je veux faire une union pour reduire mes colonnes. voici ce que je veux réellement.

    fichier initial

    code robe 12 13 14 15 16
    a bv 34 24 76 23 67
    d kj 23 32 87 34 89
    s er 456 21 65 56 67
    requête

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT code, robe, 12 as nombre, [12] as indice from feuil1
    union all
    SELECT code, robe, 13, [13] from feuil1
    union all
    SELECT code, robe, 14, [14] from feuil1
    union all
    SELECT code, robe, 15, [15] from feuil1
    resultat

    code robe nombre indice
    a bv 12 34
    d kj 12 23
    s er 12 456
    a bv 13 24
    d kj 13 32
    s er 13 21
    a bv 14 76
    d kj 14 87
    s er 14 65
    a bv 15 23
    d kj 15 34
    s er 15 56
    maintenant je cherche a modifier ma requête pour obtenir un truc plus réduit. car pour une grande table il me faudra ecrire "select....union all" plusieurs fois. j'espere vraiment que cette fois vous me comprendriez

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

Discussions similaires

  1. Union de plusieurs colonnes d'une même source
    Par mighty nagty dans le forum Développement de jobs
    Réponses: 1
    Dernier message: 27/03/2015, 17h01
  2. Réponses: 1
    Dernier message: 24/02/2011, 20h11
  3. Count dans plusieurs colonne d'une même table
    Par macfleid dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/07/2008, 21h43
  4. Réponses: 2
    Dernier message: 05/04/2008, 18h33
  5. Update de plusieur colonne d'une meme table
    Par Poisson59 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 28/09/2006, 10h25

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