Bonjour,
c'est encore une question sur des calculs de rang, mais c'est un peu plus compliqué que la simple question de classement d'élèves par rapport a leur notes
je travail sur une base de données permettant de gerer la reproduction des vaches laitières, c'est assez exotique en effet.
Nénamoins je reste bloqué sur les éléments suivants
A partir de la table,
VELAGE (Id_velage, date_velage, ref_animal)
Je souhaite calculer le rang de chaque vêlage pour chaque animal :
Id_velage ref_animal date_velage N°_velage (rang)
1 5060 01/01/2000 1
2 5060 15/02/2001 2
3 5060 10/03/2002 3
4 7080 02/03/2000 1
5 7080 11/05/2001 2
6 9010 01/03/2011 1
C’est le nombre de dates de vêlage qui sont inférieurs à la date de vêlage elle-même +1, dans la série de vêlage de l’animal. C’est ce que je n’arrive pas à transcrire dans la requête.
Par ailleurs je souhaite réaliser le même calcul pour les Inséminations :
INSEMINATIONS (Id_insemination, date_IA, ref_animal)
Par contre pour les inséminations, la numérotation repart à 1 après chaque vêlage, puisque la chronologie est la suivante :
(ex) pour l'animal 5060
IA 1 15/03/1999
IA 2 10/04/1999
VELAGE 1 01/01/2000
IA1 01/05/2000
IA2 22/03/2000
IA3 01/06/2000
VELAGE 2 15/02/2001
IA1 01/07/2001
VELAGE 10/03/2002
IA1 ...
VELAGE et INSEMINATION sont reliés par ANIMAL (N°animal, date_naissance, date_reforme, cause_reforme)
de plus un animal peut être inséminé deux fois le même jours, mais il faut que le rang d'insémination soit différent , on ne doit pas avoir
IA1
IA2
IA2
IA4
merci d'avance pour vos contributions
Partager