|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
Bonjour a tous
Et-il possible de pouvoir faire un groupement sur deux ou plus de champs d’une table ou requête ??? Avec un QRGroup ??? si oui vous seriez gentil de m’expliquer comment, merci merci a vous tous 810mcu |
|
|
00
|
|
|
#2 |
![]() ![]() Serge GirardDéveloppeur informatique Inscription : janvier 2007 Messages : 3 634 ![]() |
La question est peu floue , mais je dirais que oui . Maintenant il faudait quand même un peu plus de détail , description de la table, ordre de tri, groupage(s) à faire etc ...
|
|
|
00
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
Voila, je voudrait faire un groupage par deux champs (ou plus) d’une table,
Je suis en D6 + Access2000 et QuickRep J’ai écrit ce-ci Code :
SELECT n_b_exp, ano_b_exp, essence FROM grume GROUP BY n_b_exp, ano_b_exp, essence au fait ce que j’ai fait fonctionne de la maniere suivante, il me regroupe p/ n_b_exp en ne faisant pas de distinction si ano_b_exp différent il regroupe tout ensemble !!! Maintenant pourrait-on donné un critère au QRGroup du genre "grume.n_b_exp and grume.ano_b_exp", Ça reviendra a me regroupé par n_b_exp de cet année ano_b_exp, si l’un des deux critères sont différents op il saute !!! Suis-je assez clair, mille excuses si pas trop clair Si je l’exécute avec 1 bande détails là je n’est aucun problème il le fait comme il la faut, L’idée et de regroupé par les champs n_b_exp, ano_b_exp… merci de votre aide a vous tous |
|
|
00
|
|
|
#4 |
![]() ![]() Serge GirardDéveloppeur informatique Inscription : janvier 2007 Messages : 3 634 ![]() |
première remarque rapide :
pourquoi faire un sql avec GROUP BY , il n'y a aucune fonction d'agrégat un simple ORDER BY suffit (ou alors je n'ai pas compris )secundo : Que doit faire le groupe? |
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
Oui sorry, tu as raison, j’ai omis,
Table1, Champs n_b_exp, ano_b_exp, essence Au fait je doit regroupé les essence du n_b_exp de cette année ano_b_exp |
|
|
00
|
|
|
#6 | |||
![]() ![]() Serge GirardDéveloppeur informatique Inscription : janvier 2007 Messages : 3 634 ![]() |
Citation:
si l'etat doit ressembler à ceci Code Etat succint :
Alors l'ordre SQL serait en mettant deux QrGroup(s) le premier avec Expression= table1.Ano_b_exp le second avec Expression= Table1.Essence Toutefois si seule une année est demandée une clause Where dans la Query seras bien plus judicieuse |
|||
|
|
00
|
|
|
#7 | |||||
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
Bonjour SergioMaster,
Citation:
Ano_b_exp = année du bon essence = essence, Regroupé toutes les essences de ce Nº du bon qui a année du bon Code :
j’ai un doute ??? Code :
|
|||||
|
|
00
|
|
|
#8 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
En te lissant je dirais que cette procédure devrait marcher alors
QRGroup1 avec Expression= table1.n_b_exp QRGroup2 avec Expression= table1.Ano_b_exp QRGroup3 avec Expression= table1.essence Order by n_b_exp, ano_b_exp, essence Oui mais il ne tien pas compte des années (Ano_b_exp) différentes !!! Il mélange le tout (années), serais t’il p c q tous les deux champs sont des texte ??? |
|
|
00
|
|
|
#9 |
![]() ![]() Serge GirardDéveloppeur informatique Inscription : janvier 2007 Messages : 3 634 ![]() |
le QrGroup3 ne me parait pas nécessaire puisque normalement égal à la ligne détail .
Ce qui me parait pas clair en revanche c'est la hiérarchie. dans ma logique un Bon d'Expedition se fait à une certaine date et contient un certain nombre d'essences d'où ma réponse |
|
|
00
|
|
|
#10 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
Sorry, je ne t’est pas écrit,
j’ai besoin de faire un groupement p/ essence puisque j’ai différentes essences et je doit résumé leurs nombres et autres calculs essence/essence du bon d’expédition de cette année Code :
|
||
|
|
00
|
|
|
#11 | ||||||
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
en écrivant un query que voila, il fait la meme chose
Code :
table Code :
Code :
|
||||||
|
|
00
|
|
|
#12 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
Autre doute,
dans un QRGroup1 avec Expression= table1.n_b_exp and table1.Ano_b_exp ??? ça peut marché ??? |
|
|
00
|
|
|
#13 | ||||
![]() ![]() Serge GirardDéveloppeur informatique Inscription : janvier 2007 Messages : 3 634 ![]() |
j'ai toujours évité de mettre deux conditions sur un group , de plus ce serait plutôt OR que AND en effet pour que ce que j'appelle une rupture (changement de groupe) se fasse c'est selon une des conditions ou les deux sinon je crois que dans ce cas
01 2007 02 2007 <--- rupture sur bon vrai mais sur année faux donc FAUX 03 2008 ça ne marcherait pas Maintenant Count de quoi et total de quoi Code :
genre : Code :
un panachage des deux solutions pour 'gérer' le saut de ligne un QRGroup avec Expression=table1.n_b_exp et un GroupFooter Associé qui fera la ligne Blanche |
||||
|
|
00
|
|
|
#14 | ||||||||
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
Bonjour SergioMaster,
J’ai trouver, tu remarqueras que il y a de ton idée dans ce que j’ai pu faire, Je me permets d’éclaté ici toute la procédure en pensant qu’elle pourras servir ou en partie a qq, qui sait !!! Query1 = données Code :
Code :
Code :
Code :
C’est que des fois on focalise sur un truc qui est archi faux et alors on ne veut pas regardé ailleurs, mais bon l’insistance paye toujours. Autre question, là aussi je ne sais pas trop comment recomposer mon Query1 pour y ajouté une deuxième table, je m’explique Table2 même recherche même résultat, l’idée est de pouvoir affiche aussi les données de la Table2 pour comparer résultat Table1 et Table2 ??? Merci a toi SergioMaster et a vous tous |
||||||||
|
|
00
|
|
|
#15 | ||||||
![]() ![]() Serge GirardDéveloppeur informatique Inscription : janvier 2007 Messages : 3 634 ![]() |
tu pourrais pas donner les descriptions des tables ?
dans les SQL pourquoi l'opérateur LIKE ? pourquoi pas = tout simplement à moins que tu nous cache des choses dans le groupFooter pourquoi avoir besoin d'une Query TQRExpr est là pour ça Code SQL :
ne fait pas ce que tu veux ? Pour deux tables grume1,grume2 propositions de délire ![]() ![]() JOIN Code SQL :
UNION Code SQL :
|
||||||
|
|
00
|
|
|
#16 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
Quelles sont les liaisons entre QUERY etc...
Juste les Data Source pour les deux Dans le groupFooter pourquoi avoir besoin d'une Query TQRExpr est là pour ça… explique-moi comment ??? p c q chez moi il reste a Zéro !!! et Expression= Count, QRBand et le FooterBand de QRGroup qui a comme Expression= Query1.n_b_exp |
|
|
00
|
|
|
#17 | ||
![]() ![]() Serge GirardDéveloppeur informatique Inscription : janvier 2007 Messages : 3 634 ![]() |
Citation:
Citation:
Expression=SUM(Query1.nbr_grumes) Expression=SUM(Query1.t_volume_sa_def) etc.... toutefois attention au remise à zero (ResetAfterPrint) |
||
|
|
00
|
|
|
#18 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
Bonjour SergioMaster,
J’ai re-testé, Il reste tj a zéro Citation: Envoyé par SergioMaster Dans le groupFooter pourquoi avoir besoin d'une Query TQRExpr est là pour ça… explique-moi comment ??? p c q chez moi il reste a Zéro !!! et Expression= Count de QRBand3 et le FooterBand de QRGroup1 qui a comme Expression= Query1.n_b_exp sorry, Mais Je ne vois pas comment il peut faire le total(count) des essences ??? pour Expression=SUM(Query1.nbr_grumes) Expression=SUM(Query1.t_volume_sa_def) etc.... pareille reste a zéro...C’est pas 1 commande que je dois activé ??? que avec 1 Query |
|
|
00
|
|
|
#19 | ||||
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2002 Messages : 177 ![]() |
SergioMaster,
Donne moi un coup de main svp, Pour la déclaration des autres champs dans la clause FROM entre les champs "," c’est bon ou autre chose? Question : Tous les champs doivent être déclaré dans cette clause ? Code :
Code :
|
||||
|
|
00
|
|
|
#20 |
![]() ![]() Serge GirardDéveloppeur informatique Inscription : janvier 2007 Messages : 3 634 ![]() |
la partie ON du JOIN n'est pas bonne
elle doit être faite comme une clause WHERE c'est à dire avec des AND /OR c'est à toi de définir les champs commun entre les deux tables cf cours SQL maintenant je t'ai fait cette proposition sans vraiment comprendre la structure de tes tables donc il faut bien réfléchir à ton type de jointure (je ne suis pas trop calé dans ce domaine) . Si tu patauges fait plutôt un post dans le forum SQL en indiquant ton type de SGBD et surtout en décrivant bien tes tables et ce que tu veux obtenir de même que ton essai de code (voir même un petit jeu d'essai) |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com