Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1308 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  fonctionnement d'un group by

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

fonctionnement d'un group by

n°2105941
donny3
Posté le 12-10-2011 à 11:54:41  profilanswer
 

Salut,
 
J'aurai aimé savoir comment fonctionne un group by,
pour être plus clair j'ai cette requête.
 

Code :
  1. select nom,prenom,avg(note)
  2. from tablenote
  3. group by nom,prenom


 
Comment oracle va procéder ?
Que va t il faire en premier ?
..
 
Merci


Message édité par donny3 le 12-10-2011 à 15:02:17
mood
Publicité
Posté le 12-10-2011 à 11:54:41  profilanswer
 

n°2105974
olivthill
Posté le 12-10-2011 à 14:06:00  profilanswer
 

En premier lieu, il va chercher les données, et en second lieu, il va faire les regroupements et le calcul des moyennes.
 
(N.B. Mettre une majuscule à la première lettre des phrases est un vieil usage qui est recommandé, car ça facilite la lecture.
 
Quand on montre des lignes de codes sur un forum, on peut utiliser des balises pour que ce code apparaisse dans un joli cadre. Par exemple, ici, il existe les balises [Fixed]...[/Fixed ] que l'on peut utiliser en les écrivant directement dans le message ou en les insérant en cliquant sur l'icone "Fixe" au dessus du champ d'édition du message.)

n°2106008
donny3
Posté le 12-10-2011 à 15:05:38  profilanswer
 

Donc il va d'abord faire le select
et ensuite faire les calculs appropriés dans chaque groupe.
Si par exemple je rajoute

having(note) > 12


 
il va faire la moyenne que pour les notes qui sont supérieur à 12
et ceci dans chaque groupe nom+prenom.
 

n°2106012
rufo
Pas me confondre avec Lycos!
Posté le 12-10-2011 à 15:12:23  profilanswer
 

je pense pas, dans le select, c'est pas note que t'as, mais avg(note). Si tu veux faire la moyenne que sur les notes > 12, faut mettre cette condition dans le where.
 
Par contre, en faisant  

Code :
  1. SELECT nom,prenom,avg(note) AS Moy
  2. FROM tablenote
  3. GROUP BY nom,prenom HAVING Moy > 12


Là, t'auras que les moyennes > 12.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2106019
lasnoufle
La seule et unique!
Posté le 12-10-2011 à 15:33:34  profilanswer
 

rufo a écrit :


Par contre, en faisant  

Code :
  1. SELECT nom,prenom,avg(note) AS Moy
  2. FROM tablenote
  3. GROUP BY nom,prenom HAVING Moy > 12


Là, t'auras que les moyennes > 12.


Attention si c'est du Oracle, tu peux pas utiliser d'alias dans la clause HAVING, faut plutot faire ca:

Code :
  1. SELECT nom,prenom,avg(note) AS Moy
  2. FROM tablenote
  3. GROUP BY nom,prenom HAVING avg(note)> 12


---------------
C'était vraiment très intéressant.
n°2106020
donny3
Posté le 12-10-2011 à 15:54:40  profilanswer
 

J'ai l'impression qu'avec cette synthaxe,
il va dans chaque groupe faire la moyenne
et le having va me sortir seulement les groupes qui ont une moyenne > 12.
 
Et non me faire la moyenne que pour les notes qui sont > 12.
Je pense que pour cela il faut que je rajoute un  
 

Citation :

where note > 12


 
tout simplement ?

n°2106023
rufo
Pas me confondre avec Lycos!
Posté le 12-10-2011 à 16:20:00  profilanswer
 

c'est ce que j'ai dit dans mon précédent post. Si tu veux faire la moyenne que sur des notes > 12, faut mettre la condition dans le where...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2106027
donny3
Posté le 12-10-2011 à 16:22:26  profilanswer
 

oups j'avais mal lu


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  fonctionnement d'un group by

 

Sujets relatifs
reconstruire bases de données mysql et information_schema[SQL] Update & Group by
[Résolu] Fonctionnement des include et headers[Resolu] GROUP BY Sur deux champs
Problème avec une requete GROUP BYgroup by
[AS2] Problème fonctionnement fonction hitTest [RESOLU !]Compter enregistrements différents dans un GROUP BY
Différence de fonctionnement dans l'IDE / à partir du .jar compilé[VBA] Adopté le fonctionnement d'un fichier a un autre.
Plus de sujets relatifs à : fonctionnement d'un group by


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR