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

SQL Oracle Discussion :

Utilisation du group by


Sujet :

SQL Oracle

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 241
    Points : 118
    Points
    118
    Par défaut Utilisation du group by
    Bonjour

    Est-il possible de faire un group by sur une seule colonne, mentionnée avec d'autres colonnes dans un select.

    Voici la reqûete que je souhaite faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    SELECT
       MERE.NOM AS NOM_MERE,
       MERE.PRENOMS AS PRENOM_MERE,
       M_VOIES.IDVOIE,
       M_VOIES.NOMVOIE AS NOMVOIE_MERE,
       MERE_DOM.NM_RUE AS NOMRUE_MERE,
       MERE_DOM.COMMUNE AS VILLE_MERE,
       MERE_DOM.CP AS CP_MERE
    FROM
       MERE,
       MERE_DOM,
       M_VOIES
    WHERE
       MERE.ID_ADRESSE=MERE_DOM.ID_ADR(+)
       AND MERE_DOM.ID_TYPE_RUE=M_VOIES.IDVOIE(+)
    GROUP BY
       M_VOIES.IDVOIE
    Mon problème est que je suis obligé de faire apparaître les autres champs de mon select, alors que je ne les veux pas dans mon regroupement.
    Donc y a t'il une astuce à ce niveau-là ?

    Merci

  2. #2
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut


    Et tu veux lesquelles de données, vu que tu groupes ?
    La plus petite, la dernière, la première, celle du milieu.. Oracle n'est pas devin.

    Il y a un moyen avec KEEP DENSE_RANK, ou avec les fonctions analytiques

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 241
    Points : 118
    Points
    118
    Par défaut
    Je veux juste regrouper par M_VOIES.IDVOIE

  4. #4
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2007
    Messages : 340
    Points : 350
    Points
    350
    Par défaut
    Ca va te servir à quoi de regrouper ?

    Si c'est ce que je pense fait plutot un ORDER BY M_VOIES.IDVOIE

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 35
    Points : 34
    Points
    34
    Par défaut
    pour regrouper il te faut d'abord une fonction de groupe dans le SELECT.

  6. #6
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2007
    Messages : 340
    Points : 350
    Points
    350
    Par défaut
    Citation Envoyé par messalux Voir le message
    pour regrouper il te faut d'abord une fonction de groupe dans le SELECT.
    Je n'ai pas l'impression qu'il veuille vraiment grouper (type group by). Plutot l'impression qu'il veut regrouper les enregistrements les uns à coté des autres.

  7. #7
    Membre confirmé Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Points : 565
    Points
    565
    Par défaut
    Citation Envoyé par madevilts Voir le message
    Je n'ai pas l'impression qu'il veuille vraiment grouper (type group by). Plutot l'impression qu'il veut regrouper les enregistrements les uns à coté des autres.
    donc un order by et pas un group by

  8. #8
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2007
    Messages : 340
    Points : 350
    Points
    350
    Par défaut
    Citation Envoyé par miloux32 Voir le message
    donc un order by et pas un group by
    Yes
    Voir post #4

Discussions similaires

  1. Utiliser un "groupe" de labels sur clic souris dans un Userform
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 13/04/2008, 03h01
  2. Réponses: 5
    Dernier message: 11/04/2007, 14h02
  3. [MySQL 5.0] RAND() inefficace quand utilisation de GROUP BY
    Par Takusen dans le forum Langage SQL
    Réponses: 2
    Dernier message: 05/11/2006, 16h39
  4. [XSD] Utilisation de groupes de balises xhtml
    Par Kehel dans le forum Valider
    Réponses: 7
    Dernier message: 30/01/2004, 10h55

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