Bonjour,

Je tiens à vous remercier par avance pour toute aide que vous pourrez m'apporter.
Pour contextualiser :
- Niveau SQL débutant +
- BO : utilisation quotidienne

Je travaille dans une société d'assurance mais je n'ai pas la main sur l'univers utilisé.

Notions clés : un identifiant de police est unique
Un identifiant de police peut avoir plusieurs périodes (ex du 01/01/2016 au 31/12/2016 et du 01/01/2017 au 31/12/2017)
Un identifiant a une date d'entrée en vigueur ( qui est normalement égale à la date de début de la premiére période)
Un identifiant peut avoir plusieurs factures définies par des dates de début et de fin (invoice.start period et invoice.end period).

Je n'ai pas accés à la structure de l'univers mais je peux taper/modifier des scripts SQL.

J'arrive parfaitement à faire la somme des factures dont les périodes invoice.startperiode >= policy.startperiode et invoice.endperiode=<policy.endperiode soit la somme des factures par période.

Néanmoins il y a des erreurs dans le systéme que je ne peux corriger définitivement ( ex une date d'entrée en vigueur inférieure à la premiére date d'exercice), je cherche donc à utiliser pour le premier exercice seulement le min entre la d'entrée en vigueur et la premiére date).


Exemple concret :
Cas un "normal" :
Entree en vigueur = premiére date d'exercice alors tout marche bien

Cas "anormal" :
Entrée en vigueur <> premiére date d'exercice alors prenre le min(entrée en vigueur,premiére date d'exercice).

Sauriez-vous comment je peux batir ma requête SQL sachant que BO impose des contraintes dans la construction de telles requêtes ?

En vous remerciant pour votre aide,

PS: si vous avez des questions et que vous avez besoin de précisions, n'hésitez pas.