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

MS SQL Server Discussion :

Passage de ligne en colonne


Sujet :

MS SQL Server

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Par défaut Passage de ligne en colonne
    Bonjour,
    J’ai une table où mes données ont a peu prés cette tête la :

    CLI_ID TRIMESTRE CA
    ----------- ----------- -----------
    1 1 19328.37
    1 4 3587.0
    2 1 123185.22
    2 2 82462.05
    2 3 61458.0
    2 4 962.28

    Mon boss les veux comme ça :

    CLI_ID CA_TRIMESTRE_1 CA_TRIMESTRE_2 CA_TRIMESTRE_3 CA_TRIMESTRE_4
    ------ -------------- -------------- -------------- --------------
    1 19328.37 3587.0
    2 123185.22 82462.05 61458.0 962.28

    En SQL je sais faire il n’y a pas de problèmes, mais pour ce faire j’ai du select …. from (select..), et ça SQL Server il aime pas du tout (normal) .
    Comme je ne connais absolument pas ce SGBD je voulais savoir s’il y avait des fonctions dans transact permettant de faire ça. Je ne peut pas passer par un langage externe pour des raison techniques et comme c’est une base avec un schéma relationnel classique je ne peux pas utiliser les outil ROLAP de SQL Server.

    Si vous avez une solution moins bourrine que mes sous requêtes je suis preneur.

    Sinon j'ai un autre petit problème bien naze : je fais un order by sur une colonne numérique et j'obtiens par exemple 1,10,11,2,3,.... alors que je veux un tri sur du numérique et pas sur du alpha, donc la encore si vous savez comment faire

    Merci.

  2. #2
    Membre éclairé Avatar de johnkro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    276
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 276
    Par défaut
    CLI_ID TRIMESTRE CA
    ----------- ----------- -----------
    1 1 19328.37
    1 4 3587.0
    2 1 123185.22
    2 2 82462.05
    2 3 61458.0
    2 4 962.28

    Mon boss les veux comme ça :

    CLI_ID CA_TRIMESTRE_1 CA_TRIMESTRE_2 CA_TRIMESTRE_3 CA_TRIMESTRE_4
    ------ -------------- -------------- -------------- --------------
    1 19328.37 3587.0
    2 123185.22 82462.05 61458.0 962.28
    En crééant différents tableaux que tu incrémentes au fur et à mesure, je m'explique...
    Si l'ID est égal à 1 tu crées un tableau tab1[index], tu ranges les données en incrémentant dans les différents tableaux, et aprés tu recopies les données. De cette façon tu évites les requêtes imbriquées


    PS : fais attention aux énormes fautes d'orthographes, genre au début mais donné, c'est mieux mes données quand même

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Par défaut
    Merci de ta réponse, mais d’après ce que je comprends tu veux que je stocke mes résultats dans des tableaux associatifs. Le problème c’est que je n’ai accès qu’à du SQL et au transact à la limite et je ne sais faire ça ni avec l’un ni avec l’autre.

    Ps : j’ai été scandaleux sur ces fautes, je ne sais même pas comment elle ne m’ont pas agressées les yeux à la relecture bien que l’orthographe et moi fassions 3

  4. #4
    Membre éclairé Avatar de johnkro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    276
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 276
    Par défaut
    Ou bien tu fais un petit script PHP qui te permets d'extraire les données qui t'intéressent, tu les stockes dans des tableaux, puis tu les inserts comme tu veux.

    PS : loool

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Par défaut
    C'est sur en Php je fais ça en 5 minutes.
    Mais en fait le problème c'est que je passe par un outil qui extraie les données de la base et qui génère des tableaux ou des graphes à partir des données et cet outil ne permet absolument pas de retoucher les données avec autre chose que SQL ou Transact

  6. #6
    Membre Expert
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Par défaut
    Bonjour,

    mot-clé PIVOT si tu utilises SQL server 2005, sinon il y a cet article qui peut t'aider : http://fadace.developpez.com/mssql/pivot/

    discussion récente sur le sujet :
    http://www.developpez.net/forums/sho...d.php?t=182367

  7. #7
    Membre éclairé Avatar de johnkro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    276
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 276
    Par défaut
    oulah ça a l 'air merdique, ben dsl je ne peux pas t'aider alors, bon courage...

    Pour information, c'est quoi cet outil?

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Par défaut
    Merci je regarde l'article tout de suite, avec de la chance je vais trouver mon bonheur.

    Pour info l'outil s'appelle IntelliJade, son avantage c'est qu'il attaque les AS400 en natif, son inconvénient c'est qu'il n'a qu'un avantage

  9. #9
    Membre éclairé Avatar de johnkro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    276
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 276
    Par défaut
    inconvénient c'est qu'il n'a qu'un avantage
    MDR! c'est déjà ça, il a un avantage lol! Bon courage!

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Par défaut
    Bon je vais essayer le produit matriciel puisque je suis pas sous 2005 et donc je n’ai pas le droit au pivot. Pourquoi je n’est pas un schéma en étoile pour pouvoir utiliser des fonctions propres aux datawarehouse

    Merci à tous les deux

  11. #11
    Membre éclairé Avatar de Monstros Velu
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2003
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 619
    Par défaut
    je te conseille la 9ème partie de cette article de SQLPro qui réponds exactement à ta problématique :
    http://sqlpro.developpez.com/cours/sqlaz/erreurs/#L9

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Par défaut
    Oui j’avais lu cet article avant de poster, c’est d’ailleurs de la que j’ai pris les deux tables que j’ai mis en début de post (la flemme de les taper à la main).
    Je suis tout à fait d’accord, un SGBD ce n’est pas fait pour reformater l’affichage des données, c’est pas son boulot, mais dans mon cas je n’ai pas d’autre choix, l’outil que j’utilise passe directement de l’extraction SQL à la publication des données sans que je puisse toucher aux données à part en SQL, c’est déjà ça parce qu’a la base c’est même pas prévu pour. Impossible de rajouter une couche entre l'extraction et la publication. Vive les outils purement drag & drop où tu es libre de rien ! Et je n’ai pas le choix des techno utilisées, sinon ça fait belle lurette que j’aurais réglé tout mes problèmes, mais bon la solution du produit matriciel est très bien .

  13. #13
    Membre éclairé Avatar de Monstros Velu
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2003
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 619
    Par défaut
    Si tu as lu l'article, pourquoi ne peux-tu pas utiliser ce qu'il propose comme solution pour réaliser ce type d'affichage ?

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 96
    Par défaut
    ba tout simplement parce que c'est moins performant niveau temps d'exécution que la solution de rudib

  15. #15
    Membre éclairé Avatar de Monstros Velu
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2003
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 619
    Par défaut
    Ha, oui, c'est effectivement une bonne raison lol 8o)

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

Discussions similaires

  1. copie ligne en colonne avec passage ligne automatique
    Par John Parker dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 26/10/2011, 11h37
  2. Réponses: 2
    Dernier message: 13/01/2009, 22h06
  3. Demande de conseil pour migration de lignes vers colonnes
    Par ririd dans le forum Administration
    Réponses: 6
    Dernier message: 04/11/2004, 18h02
  4. [JTextPane] passage a ligne automatique.
    Par bibi-kha dans le forum Composants
    Réponses: 9
    Dernier message: 02/09/2004, 12h10
  5. [TSynMemo] Positionnement par ligne et colonne
    Par Mercilius dans le forum Composants VCL
    Réponses: 9
    Dernier message: 16/04/2003, 17h22

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