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 :

Remaniement Requete Special Group BY ?


Sujet :

Langage SQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 104
    Points : 69
    Points
    69
    Par défaut Remaniement Requete Special Group BY ?
    Bonjour,
    J espere trouver ma solution dans SQL...
    Pour le moment j ai un SELECT tout bête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM q.mas_lb1 WHERE geo_id IN (SELECT geo_id FROM q.geotype WHERE crs_id = 3)
    J'obtiens un tableau de ce genre :



    Et j'aimerais plutot un tableau de ce genre :



    Un group by geno_id ne marche pas mais c'est dans cette esprit, une solution ?

    Merci!

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 104
    Points : 69
    Points
    69
    Par défaut
    Je pose une colle ?!?

  3. #3
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 036
    Points
    34 036
    Billets dans le blog
    14
    Par défaut
    Le SQL travaille avec des tables dont les différents attributs sont les têtes de colonnes et les données ou les résultats des requêtes sont présentés en ligne.

    Ce que tu demandes, c'est de mettre des valeurs en tête de colonne.

    SQL n'est pas destiné à la présentation des résultats. Pour cela, utiliser par exemple PHP.

    Un GROUP BY geo_id ne te donnera qu'une ligne par geo_id et est donc plutôt destiné à faire des calculs (somme, comptage du nombre d'éléments, moyenne...).

    Ce que SQL peut te donner, c'est un tri par geo_id :
    - d'abord toutes les lignes 1142
    - puis toutes les lignes 1143
    - ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT * 
    FROM q.mas_lb1 
    WHERE geo_id IN 
     (SELECT geo_id FROM q.geotype WHERE crs_id = 3)
    ORDER BY geo_id
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  4. #4
    J1
    J1 est déconnecté
    Membre averti Avatar de J1
    Inscrit en
    Mai 2004
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 321
    Points : 335
    Points
    335
    Par défaut
    Bonjour,

    malheureusement, tu n'indiques pas ton SGBD, petchos.
    Si tu travailles sous Access, je te conseille de t'orienter vers une requête dite "d'analyse croisée". Si tu ne sais pas comment procéder, tu peux utiliser l'assistant d'Access, qui te guidera dans la création de la requête.

    Pour plus d'informations, tu peux aussi consulter cette KB de Microsoft.

  5. #5
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 083
    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 083
    Points : 30 838
    Points
    30 838
    Par défaut
    Les "requêtes" d'analyse croisée n'ont plus rien à voir avec la définition du langage SQL...
    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.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 104
    Points : 69
    Points
    69
    Par défaut
    et puis j'utilise Postgres ...

Discussions similaires

  1. [Oracle] Requête avec GROUP BY
    Par bud_gw dans le forum Langage SQL
    Réponses: 3
    Dernier message: 03/07/2006, 10h26
  2. Requete avec group by
    Par zamilou dans le forum Langage SQL
    Réponses: 6
    Dernier message: 31/03/2006, 08h37
  3. pb requete. probablement group by
    Par debdev dans le forum Langage SQL
    Réponses: 2
    Dernier message: 12/12/2005, 14h05
  4. Requete speciale jumelant 2 tables
    Par joxbl dans le forum Requêtes
    Réponses: 4
    Dernier message: 15/11/2005, 11h56
  5. Requete mysql group by
    Par yobogs dans le forum Requêtes
    Réponses: 3
    Dernier message: 09/11/2005, 21h38

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