Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Requête sur des dates

32 réponses
Avatar
Isabelle
Bonjour

Qui peut m'aider ?

J'ai une table avec en autres nom , datedebut, datefin, montant
exemple:
toto 01/03/2004 28/02/2007 200
tata 01/06/2005 31/05/2008 300
titi 01/04/2005 31/03/2008 500
tutu 01/01/2006 31/12/2015 200

Chaque année à la date anniversaire de datedebut, le montant doit être
révisé

J'aimerai créer une requête qui permettrait en fonction de l'année
choisie de visualiser les fiches concernées par une revalorisation
exemple
année choisie 2008
tata 01/06/2008
tutu 01/01/2008

La solution est sans doute très simple mais je dois chercher les
complications, je n'y arrive pô :-(


Merci d'avance pour vos conseils et solutions

Isabelle

2 réponses

1 2 3 4
Avatar
Phil

ton besoin c'est bien d'obtenir :
"les enregistrements dont le champ [Au] est dans l'année de traitement mais
pas ceux dont [Revision Du] est dans cette année (càd ceux dont la révision
a déjà été traitée)."


exact tout à fait
et non !!!


il manquait une condition que tu n'avais pas exprimé
"les enregistrements de la table "locations" dont le champ [Au] est
dans l'année de traitement correspondant à ceux de la table "suivi"
dont [Revision Du] n'est pas dans cette année (càd ceux dont la
révision a déjà été traitée)
plus tous les enregistrements de la table "location" qui n'ont pas
d'enregistrements correspondant dans la table "suivi" (càd ceux dont la
révision n'a jamais été traité).

CQFD

alors pourquoi dans la requête 4 la condition de Année c'est
[Année de traitement ?] ce qui est equivalent à ecrire =[Année de
traitement ?]
tout simplement parce que j'avais tester plusieurs solutions et j'ai

supprimer les signes juste avant l'envoi de la basse

pour correspondre à la demande il faut <> [Année de traitement ?] ou
Not [Année de traitement ?]


ben non =>aucun enregistrement tu peux tester
et si la requête nous retourne bien ce qu'on lui a demandé mais la

demande est incomplète

de plus rétablis la jonction des tables avec l'option 1 "Inclure seulement
les lignes des deux tables pour lesquelles les champs joints sont égaux"


en rétablissant la jonction c'est pareil => aucun enregistrement

Permet moi une petite remarque : tester cette requête avec un seul
enregistrement dans la table "Suivi" ne me semble pas la situation la plus
favorable pour examiner les différents cas qui peuvent se présenter.
Je te suggère de créer de toute pièce les différents cas que tu rencontrera
et de tester tes requêtes avec, les résultats des tests seront plus
probants.


Merci, c'est vrai qu'il faut plusieurs exemples pour être certain qu'une
requête fonctionne mais déjà avec une date dans la table suivi cela ne marche
pas alors je n'ai pas essayé d'en ajouter d'autres.

Merci pour ta patience.

Phil






Avatar
Isabelle

il manquait une condition que tu n'avais pas exprimé
"les enregistrements de la table "locations" dont le champ [Au] est dans
l'année de traitement correspondant à ceux de la table "suivi" dont
[Revision Du] n'est pas dans cette année (càd ceux dont la révision a
déjà été traitée)
plus tous les enregistrements de la table "location" qui n'ont pas
d'enregistrements correspondant dans la table "suivi" (càd ceux dont la
révision n'a jamais été traité).


et oui tu as raison
C'est la raison pour laquelle, il fallait changer le type de jointure

Je ne suis pas au bout de mes peines

mais c'est ainsi que l'on progresse, n'est-ce pas ?

1 2 3 4