Compter le nombre de ligne (pas les colonnes) dans une requê

Ollam Messages postés 77 Date d'inscription   Statut Membre Dernière intervention   -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   -

Bonjour,

J'essai de faire une petite base de données sur des chiffres d'affaires.

J'ai créé une table année, une autre pour les mois (contenant les valeurs pour chaque mois par année)

Je voudrais faire en sorte d'avoir la moyenne annuelle.
Mais, nous sommes en aout de l'année en cour (2022)
Je voudrais pouvoir récupérer pour toutes les années la moyenne de janvier à aout, oui, pour pouvoir comparer des périodes identiques.

J'ai déjà réussi à faire en sorte qu'un mois à 0 CA (comme les mois de septembre, octobre, novembre et décembre) de l'année en cour ne soit pas comptés de fait.
J'obtiens donc le chiffre 8 (12 mois - 4 mois à 0 = 8)
Le mois prochain, dès que j'aurais enregistré le premier chiffre de septembre, le nombre de mois passera à 9

Je sais faire des formules sur les colonnes, mais pas sur les lignes
La moyenne des valeurs devra donc se faire de janvier à septembre pour toutes les années.

Donc si quelqu'un à une idée je suis preneur.

Merci d'avance
Windows / Chrome 103.0.0.0

3 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 

bonjour,

Je ne suis pas certain de comprendre la structure de tes tables.   Si j'ai bien deviné, ce n'est pas correct.

Je ferais ainsi:

  1. une table avec deux champs, la date du premier jour du mois, le CA
  2. une requête qui retourne l'année la plus récente
  3. une requête qui retourne, pour cette année, la liste des mois
  4. une requête qui retourne les totaux par année, pour les mois de la requête "3".
0
Ollam Messages postés 77 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour, 

C'est vrai que c'est pas facile à expliquer, c'est pourquoi voici un imprime écran.
Chaque ligne correspond à une année composé des 12 mois + un champ "Total".
Ce champ "Total" fait son travail, il fait la somme de tous les mois, mais pour faire des comparaisons rapides, je voudrais que le total affiche le résultat d'une même période.

Dans l'exemple, on constate que le total de l'année en cour se fait sur les 8 premiers mois, rien de plus logique.
Par contre, pour les années précédentes, le champ "Total" affiche la somme des 12 mois.

Je voudrais afficher pour les années précédentes la même période de temps (soit jusqu'en aout dans l'exemple).

J'ai réussi en faisant des requêtes, dans des requêtes à récupérer le nombre de mois >0, ce qui me donne 8.

Je ne parviens pas à utiliser ce 8 pour faire une somme par ligne .
Le N° auto de chaque mois correspond bien au mois (1=janvier, 2=février, 3=mars, etc....)

Merci encore pour votre réponse.

0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 

Je pense que tes tables ne sont pas bien structurées: tu devrais avoir une table CA (par mois), avec les champs: ID_année, numero_du_mois, et CA.

0
Ollam Messages postés 77 Date d'inscription   Statut Membre Dernière intervention  
 

Je vais mettre un place une table pour chaque mois.
Cependant, je vais devoir rassembler toutes les données dans une requête et je vais me retrouver avec le même problème,
a savoir récupérer les données sur les 8 premiers mois de l'année (dans mon exemple bien sur).
En fait, comme maintenant tous les mois se retrouveront sur la même ligne.
C'est pas simple !!!!!!

0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 

Ma suggestion: une seule table pour tous les CA, avec les champs: ID_année, numero_du_mois, et CA.

0